Tenant App Types and Promotion Flow
Choose a Gencow tenant app shape and move it from local development to Dev and Production
Tenant app types
Gencow tenant apps use one of three hosting shapes. Choose the shape by what the app serves, not by the framework used to build its frontend.
| App type | What it contains | Typical command |
|---|---|---|
| Static frontend | A built frontend only; no Gencow backend runtime | gencow static dist/ |
| Backend-only | Gencow backend APIs, auth, database, realtime, AI, or jobs without a hosted frontend | gencow deploy |
| Fullstack | A hosted frontend connected to a Gencow backend | gencow deploy --static dist/ |
Static and backend-only are independent deployment components. A fullstack app publishes both components, with the backend deployed before the frontend. If the frontend calls Gencow procedures, it is a fullstack app even when the frontend itself is a small static bundle.
Recommended development and promotion flow
Keep the source code on your computer, but use the cloud Dev app as the normal development and review target:
- Create and edit the app locally.
- Run the app locally when you need fast UI iteration, offline work, or disposable data.
- Deploy to Dev with
gencow devor a non---proddeploy command and verify the hosted runtime there. - Develop and review in Dev until the app, backend, database migrations, authentication, realtime behavior, jobs, and platform-managed features are sufficiently validated.
- Promote the reviewed version to Production with an explicit
--prodcommand.
For AI and other platform-managed features, Dev verification is required for realistic behavior. Local-only development is not recommended: local mode can use different credentials, runtime services, scheduling durability, network behavior, and provider transport. Local checks are useful, but they do not replace a Dev deployment and review.
# Local source and optional local runtime
bunx gencow@latest dev --local
# Recommended cloud development and review target
bunx gencow@latest login
bunx gencow@latest dev
# Fullstack Dev one-shot deployment
bun run build
bunx gencow@latest deploy --static dist/
# Production, only after Dev review and explicit approval
bunx gencow@latest deploy --prod --static dist/gencow dev, gencow deploy, and gencow static without --prod target the
Dev app. Production is a separate app and database, and consumes a separate
app slot. A generic request to “deploy” never implies Production.
Production and custom domains
Production deployment and custom-domain connection are available from the
Personal plan and above (Personal and Pro; Enterprise agreements may have
custom limits). A custom domain can be connected only to the Production app.
Deploy to Production first, then connect the domain from the Dashboard or with
gencow domain set <hostname> --prod.
Every app still receives a managed *.gencow.app address in Dev. See
Deployment, Local Development,
and Hosting & Custom Domains for the
command and verification details.