DocsOverviewQuick StartFrameworksDeploymentsDomainsEnv VarsFeature FlagsAI GatewayAPI ReferenceWebhooks

Frameworks

Supported frameworks

Deploxa auto-detects your framework from your repository and pre-configures the build pipeline. You can override any detected setting in project settings.

20 frameworks supported across JavaScript, Python, and containers.

How detection works

Deploxa scans the root of your repository for config files and dependency names in package.json or requirements.txt. The first matching rule wins. If nothing matches and a Dockerfile exists, Docker mode is used. You can always manually select a framework in project settings.

React / JavaScript

FrameworkDetection signalBuild commandOutput dirNotes
Next.jsnext.config.js / next.config.tsnext build.nextStatic export and server components supported.
React (Vite)vite.config.ts + react pluginvite builddistSPA mode. Configure base URL if deploying to a subpath.
Remixremix.config.jsremix buildbuildRemix v2 (Vite) and v1 (classic) both detected.
Gatsbygatsby-config.jsgatsby buildpublicStatic site generation. Gatsby 4+ recommended.

Vue / Nuxt

FrameworkDetection signalBuild commandOutput dirNotes
Nuxtnuxt.config.tsnuxt generate.output/publicStatic generation (nuxt generate). Server mode coming soon.

Svelte / Solid / Qwik

FrameworkDetection signalBuild commandOutput dirNotes
SvelteKitsvelte.config.jsvite buildbuildUse the static adapter for static output.
Solid (SolidStart)app.config.ts (solid-start)vinxi build.outputStatic preset required for Deploxa.
Qwikqwik.config.tsqwik builddistQwik City static adapter.

Angular / Astro / Eleventy

FrameworkDetection signalBuild commandOutput dirNotes
Angularangular.jsonng builddist/<project>Set output directory to match your project name.
Astroastro.config.mjsastro builddistStatic output mode. Server mode not yet supported.
Eleventy.eleventy.jseleventy_siteEleventy 2.0+ recommended.
Docusaurusdocusaurus.config.jsdocusaurus buildbuildDocumentation sites. Works out of the box.

Python

FrameworkDetection signalBuild commandOutput dirNotes
FastAPIrequirements.txt + fastapi import——Deployed as a containerized ASGI app via Uvicorn.
Flaskrequirements.txt + flask import——WSGI app wrapped with Gunicorn.
Djangomanage.py + django importpython manage.py collectstaticstaticfilesStatic files served via WhiteNoise.
Starletterequirements.txt + starlette import——Lightweight ASGI. Same deployment path as FastAPI.

Node.js Servers

FrameworkDetection signalBuild commandOutput dirNotes
Honopackage.json + hono dependencytsc / vite builddistEdge-first framework. Deployed as a Node.js server.
Adonis.adonisrc.jsonnode ace buildbuildFull-stack MVC. Set NODE_ENV=production.

Docker / Container

FrameworkDetection signalBuild commandOutput dirNotes
DockerDockerfiledocker build—Any language, any runtime. Full Docker support with multi-stage builds.

Override detected settings

Go to Project → Settings → Build & Output to manually configure:

Framework preset — Override auto-detection and select a specific framework.
Build command — Replace the default build command with any shell command.
Output directory — Point to the directory containing your built assets.
Install command — Default: npm install / pip install -r requirements.txt.
Node.js version — Select Node.js 18, 20, or 22.
Python version — Select Python 3.10, 3.11, or 3.12.

Docker / Custom runtimes

If your project has a Dockerfile in the root, Deploxa builds and runs it as a container. This supports any language or runtime — Rust, Go, Ruby, PHP, Java, and more.

Example Dockerfile (Node.js)

FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["node", "dist/server.js"]

Your container must listen on the port specified by the PORT environment variable (injected automatically at runtime). Expose any port in your Dockerfile — Deploxa routes traffic to it.

Need a framework not listed?Deployments guide