Picked Next.js, Nuxt, SvelteKit or Astro? Your site came with the framework's own minimal starter built and running on the Node.js runtime — a placeholder that proves the runtime works and that you replace with your own code.
What gets installed
- The official scaffolder (pinned:
create-next-app,nuxi init,sv create,create-astro) run non-interactively into your site's code root, thennpm installand the production build, in your container. No git repository, no example data beyond the template's welcome page. - A
startscript inpackage.jsonthat listens on thePORTwe hand the app — the same command a later deploy will use. - Where the framework needs an adapter to run as a server, it is wired: SvelteKit gets
@sveltejs/adapter-node(withORIGINand proxy headers in.env), Astro gets@astrojs/nodein standalone mode withoutput: 'server'.
Replacing it with your own code
- Push your project to GitHub, GitLab or veldhost Git and connect it on the Deploy tab (see Deploy from Git). Every push runs
npm ci, your build command and a restart. - Keep a
startscript that listens onprocess.env.PORT(3000 in the container) — the table below shows the one the starter uses. Set a different one on the Node card if your project needs it. - Files in
public/are served by nginx straight from disk; everything else is proxied to your app, WebSockets included.X-Forwarded-Prototells your app it is behind https.
| Framework | Build | Start command | Notes |
|---|---|---|---|
| Next.js | next build | next start | Respects PORT. output: 'standalone' also works with node .next/standalone/server.js. |
| Nuxt | nuxt build | node .output/server/index.mjs | Nitro respects PORT and HOST. |
| SvelteKit | vite build with @sveltejs/adapter-node | node --env-file=.env build | .env carries ORIGIN so form actions accept your https address. |
| Astro | astro build with @astrojs/node (standalone) | node ./dist/server/entry.mjs | Needs output: 'server' (or per-page prerender = false) for on-request rendering; a fully static Astro site is better served as a static site. |
Updating and memory
- Framework updates are ordinary dependency updates in your repository; deploying them builds in our build container, not in your site's memory.
- The first install builds in your container with a temporarily raised memory limit; a Starter container (768 MB) runs any of these starters comfortably afterwards.