stackapRequest access

Frameworks

Node.js on Stackap

Stackap runs any Node.js app that has a start script: it installs dependencies, runs your build if you have one, and starts the app as a non-root process that must listen on the port it is given.

How Stackap recognizes Node.js

Node is the last test, tried after Next.js, the static-output frameworks and a plain index.html. A project qualifies when package.json has a start script. A repository with an index.html and no start script is served as a plain static site instead. If none of these match and there is no Dockerfile, the build is refused with the reason.

What Stackap builds

The generated image installs dependencies with npm, Yarn or pnpm depending on the lockfile, runs the build script when one exists, and runs npm start as an unprivileged user. Your app must listen on the port passed in the PORT environment variable, not a number you hard-coded.

Health is judged by an HTTP request. By default Stackap asks the app's port for a successful response on a default path. An API with no page at the root should be given its own port and health path in project settings, for example port 8080 and /healthz, which is the combination that was tested with a toy API.

What a Node.js project needs

Verification status

Tested with real Docker builds of the generated Node image and, live on the server, with a toy API-only app that was refused with default settings and served correctly once given a port and health path.

Still to verify: long-running workers with no HTTP port, WebSocket-heavy apps, apps that need system packages beyond what the base image has, or any particular framework such as Express or Fastify (they should behave as Node apps, but we have not run each).

Early-access scope

Questions

Does it support Python?
No. Python is not supported yet, and we will not list it as a supported framework until it is.
Where do uploads go?
Not to the container's disk. Use the project's Postgres database or S3-compatible object storage.

Stackap is in early access. Tell us what you run and we will reply with a straight answer about whether it fits.

Ask for an invitation

Last updated .