Deploy any static framework in Europe
Eight presets, built in Paris and served by Bunny.net's CDN. Each one fills in the build image, command and output folder, and every value stays yours to change.
Static output, no adapter
- Detected from
- astro.config.*
- Install
- npm ci --ignore-scripts
- Build command
- npm run build
- Output directory
- dist
- Build image
- node:24-alpine · arm64
With adapter-static
- Detected from
- @sveltejs/kit in package.json
- Install
- npm ci --ignore-scripts
- Build command
- npm run build
- Output directory
- build
- Build image
- node:24-alpine · arm64
Static export: output: 'export'
- Detected from
- next.config.*
- Install
- npm ci --ignore-scripts
- Build command
- npm run build
- Output directory
- out
- Build image
- node:24-alpine · arm64
Static build
- Detected from
- gatsby-config.*
- Install
- npm ci --ignore-scripts
- Build command
- npm run build
- Output directory
- public
- Build image
- node:24-alpine · arm64
Any Vite app that builds to dist
- Detected from
- vite.config.*
- Install
- npm ci --ignore-scripts
- Build command
- npm run build
- Output directory
- dist
- Build image
- node:24-alpine · arm64
Extended edition, no install step
- Detected from
- hugo.toml, hugo.yaml or hugo.json
- Install
- None needed
- Build command
- hugo --minify
- Output directory
- public
- Build image
- ghcr.io/gohugoio/hugo:v0.168.0 · arm64
Installs your Gemfile first
- Detected from
- _config.yml
- Install
- bundle install
- Build command
- bundle exec jekyll build
- Output directory
- _site
- Build image
- ruby:3.3 · arm64
Nothing to build
- Detected from
- index.html and no package.json
- Install
- None needed
- Build command
- echo done
- Output directory
- .
- Build image
- alpine:3.24 · arm64
Not on the list, or not built here.
Pick Custom
Any framework that builds to static files. It runs in node:24-alpine with your build command, and we upload the folder you name.
Set a root directory
For a monorepo, point the project at the folder the site lives in. The build runs there.
Upload a built folder
Built somewhere else? Upload the output: up to 250 MiB on Free and 1 GiB on paid plans. It goes straight to production.
Your package manager, from your lockfile
For Node frameworks, the lockfile you commit decides the install, or the packageManager field in package.json when it is set. Install scripts stay off, so a dependency cannot run code while it installs.
| Lockfile | Install |
|---|---|
| pnpm-lock.yaml | pnpm install --frozen-lockfile --ignore-scripts |
| yarn.lock | yarn install --frozen-lockfile --ignore-scripts |
| package-lock.json | npm ci --ignore-scripts |
How long a build takes here.
The median build on deploybase, from build start to live, across every framework and every team. Counted on 25 September 2026.
- Mean, pulled up by a few long builds
- 78 s
- Builds timed
- 1,641
- Builds that succeed
- 81.5 %
- Time limit per build
- 15 min Free, 30 min paid
Failed builds are left out of the times: they measure how long we took to give up. There is no figure per framework yet; at our size it could point at one customer. The live numbers are on /open.
What no framework gets here yet.
- Server rendering Only Astro renders on demand here, in beta. For other frameworks we serve files: SSR, API routes and form actions need a server; server code beside the site can be a function (beta).
- Your Node version Node builds run Node 24. We do not read .nvmrc or the engines field yet.
- A build cache Nothing carries over between builds, so every build installs from scratch.
- Git submodules and Dockerfiles Builds clone one repository without its submodules, and use our images, not yours.
Questions about frameworks.
Something else? Write to support@deploybase.eu. A person answers.
My framework is not on the list. Can I still deploy it?
Yes, if it builds to static files. Pick Custom: the build runs in node:24-alpine with your build command, and we upload the folder you name. You can also upload a folder you built elsewhere.
How does detection work?
When you pick a repository on GitHub, we read the files at its root and package.json and fill in the framework, its build command, its output folder and your package manager. On other Git hosts you pick the framework from the list. Every value can be changed.
Can I deploy from a monorepo?
Yes. Set the project's root directory to the folder the site lives in, and the build runs there.
Does deploybase run server-side rendering?
Only for Astro, in beta on paid plans: @deploybase/adapter-astro runs on-demand pages on a function in Paris, on your deploybase address, branch previews and custom domains. For other frameworks we serve the files they build. Server code beside the site can be a function in functions/, in beta on paid plans.
FunctionsWhere do builds run?
In Paris, on Scaleway, in an isolated container per build. The site is then served by Bunny.net, an EU CDN company.
EU hostingPut your site live.
Create a team on the free plan and connect the repository. The preset is already filled in.