Deploy your server-side rendered (SSR) Astro app to Vercel.
Use this integration in your Astro configuration file:
import { defineConfig } from 'astro/config';
import vercel from '@astrojs/vercel';
export default defineConfig({
adapter: vercel()
});
When you build your project, Astro will know to use the .output
folder format that Vercel expects.
astro build
That's it! You can deploy by CLI (vercel deploy
) or by connecting your new repo in the Vercel Dashboard.
Vercel's File System API must be enabled. You must enable it yourself by setting the environment variable: ENABLE_FILE_SYSTEM_API=1
.
// vercel.json
{
"build": {
"env": {
"ENABLE_FILE_SYSTEM_API": "1"
}
}
}
Learn more about setting enviroment variables in Vercel.
A few known complex packages (example: puppeteer) do not support bundling and therefore will not work properly with this adapter. By default, Vercel doesn't include npm installed files & packages from your project's ./node_modules
folder. To address this, the @astrojs/vercel
adapter automatically bundles your final build output using esbuild
.