Deployment
Build, migrate, run the web app and the background worker, and meet the production runtime checks for Openfront Airline.
Build, migrate as a separate release step, then start:
npm run build
npm run migrate
npm startnpm run build does not apply migrations. Back up existing data before migrating.
Run the worker as its own process:
npm run workerThe repository includes railway.toml (web: migrate then next start) and railway.worker.toml (worker). The README has a Vercel deploy button that asks for DATABASE_URL, SESSION_SECRET, and four S3_* variables. You still need S3_ENDPOINT and the rest of the production configuration.
In production the worker runs a runtime check before starting. It requires the full list of production variables above, HTTPS for the public URLs, and a storefront carrier that has finished onboarding with two payment operators, an evidence-only manual provider, and a settlement-import credential and connection. Set ALLOW_INCOMPLETE_LAUNCH_SETUP=true to relax the carrier checks while you set up. Public sales stay closed while it is on.
The runtime check also requires every active payment provider to use the manual adapter, so production runs with evidence-only settlement providers active.