Runtime overview

Every project stores an API runtime_kind. This page maps each kind to how erfa3ly builds and hosts your app.

Platform operators can disable specific runtimes via server configuration. If a runtime is unavailable in your workspace, the create flow will surface that limitation—contact support if you expect it to be enabled.

Quick comparison

Runtime kindWhat it isHosting model
nodejs_ssrNext.js and other Node SSR frameworks detected for server renderingDocker container behind edge proxy; loopback health checks
next_static_exportNext.js output: 'export' and other static export layoutsStatic files on the edge (no Node process)
react_staticVite, Create React App, and similar SPAs built to a static folderStatic files on the edge
static_htmlPre-built HTML/CSS/JS or sites without an npm build stepStatic files on the edge
nodejs_serviceLong-running Node servers (Express, Nest, Fastify, etc.)Docker container; configurable start command and health path
laravel_appLaravel PHP applicationsDocker container; public as web root; optional queue/scheduler flags in wizard
php_appGeneric PHP apps (not Laravel-specific)Docker container; Composer install options
custom_dockerfileYour Dockerfile at repo root (or root directory)Image build without source mutation; listen port from runtime options

Managed database attachment

When creating a project, the wizard can provision or attach a managed database for container-style runtimes: Node SSR, Node services, custom Dockerfile, PHP, and Laravel. Static artifact runtimes do not use this path in the same way—wire databases from your API backend or external services.

Per-runtime guides