Skip to content

Supported Frameworks

Stackpad automatically detects your framework from your package.json and configuration files. Here’s a complete list of supported frameworks and how they’re detected.

Auto-detected frameworks

FrameworkDetectionDefault portBuild commandStart command
Next.jsnext in dependencies3000next buildnext start
Remix@remix-run/node in dependencies3000remix buildremix-serve
Astroastro in dependencies4321astro buildastro preview
Nuxtnuxt in dependencies3000nuxt buildnuxt start
SvelteKit@sveltejs/kit in dependencies3000vite buildnode build
React Router v7react-router v7+ in dependencies3000react-router buildreact-router-serve
Expressexpress in dependencies3000From package.jsonnode entrypoint
Honohono in dependencies3000From package.jsonnode entrypoint
Static siteNo server framework80From package.jsonStatic file server

Detection priority

If multiple frameworks are detected (e.g. Next.js + Express), Stackpad uses the following priority:

  1. Next.js
  2. Remix
  3. Nuxt
  4. SvelteKit
  5. React Router v7
  6. Astro
  7. Hono
  8. Express
  9. Static site

Package managers

Stackpad detects your package manager from the lockfile:

LockfilePackage managerInstall command
pnpm-lock.yamlpnpmpnpm install --frozen-lockfile
yarn.lockyarnyarn install --frozen-lockfile
package-lock.jsonnpmnpm ci

Output modes

Server-rendered (default)

Server-rendered frameworks (Next.js, Remix, Nuxt, etc.) run as a Node.js server. Stackpad builds the application and starts the server process.

Static export

If your framework is configured for static export (e.g. output: 'export' in Next.js), Stackpad builds the static files and serves them with a lightweight web server.

Standalone (Next.js)

When output: 'standalone' is set in next.config.js, Stackpad uses Next.js’s standalone output for a minimal production bundle. This is recommended for the best performance.

Nixpacks languages

For projects that don’t match a JavaScript framework above, Stackpad uses Nixpacks as a universal build system. Nixpacks automatically detects your language and generates an optimized Docker image.

LanguageDetection
Laravel / PHPcomposer.json with laravel/framework
Pythonrequirements.txt, pyproject.toml, or setup.py
Gogo.mod
RubyGemfile
RustCargo.toml
Javapom.xml or build.gradle
Elixirmix.exs
Zigbuild.zig
C#.csproj or .sln
F#.fsproj

And 10+ more languages. See Framework detection for details on how Nixpacks works alongside JavaScript framework detection.

Detection priority

JavaScript frameworks are checked first. If none match, Nixpacks analyzes the project:

  1. JavaScript framework detection (Next.js → Remix → Nuxt → … → Express)
  2. Nixpacks language detection (Laravel → Python → Go → …)
  3. Static site fallback

What’s next?