build and start.md

Configure build and start for Express

Summary

Configure build and start for an Express app on Ample. Ample detects Node, runs npm install and npm run build --if-present, and starts the app with npm run start on the node-22 template; the app only has to bind 0.0.0.0 on PORT.

Infrastructure requirements

Prerequisites

Exact tested configuration

Steps

  1. Pin what detection cannot infer. If the start command is not in package.json, pass --start, or write it into ample.toml with ample plan --write.

  2. Deploy. Run the existing synchronous deploy once from the project directory and read the result. Exit 0 is live, 1 is failed, 2 is blocked on a required preflight action. Re-running with no change is a content-addressed no-op.

    ample deploy . --name <app-name> --public --format json
    
  3. Verify. Fetch the live URL and run the success checks below. On failure read the build log, then the runtime log, fix the cause and deploy again; do not blind-retry.

    ample logs <deployment_id> --kind build
    

Tested examples

Success checks

Limitations

Cost estimate

Estimated 5.00 USD per month (size prices from pricing.toml at build revision a1b8c38919e59cd035ebabaced73cf84ece24371).

Apps and managed databases auto-pause when idle; the estimate is the always-on monthly price of the tested sizes. Plan quotas and budgets apply.

Verification evidence

Last verified: 2026-09-19T23:55:33Z

Execution binding

MCP tool ample_deploy (registry mcp:ample_deploy), schema hash 876465fce906da0c observed 2026-09-20T01:55:48.667900+00:00 at revision 199ff1dfd526, binding state current, required scopes: servers:write.