Deploy a AdonisJS app that uses npm
EasyHost picks npm when it finds package-lock.json. There is nothing to configure, and these are the exact commands it runs for AdonisJS.
What EasyHost runs
| Step | Command |
|---|---|
| Lockfile | package-lock.json |
| Install | npm ci |
| Build | node ace build, set as the build command |
| Start | node build/bin/server.js, set as the start command |
Scripts run with npm run <script>. Dev dependencies are available during the build, and the app runs with NODE_ENV=production.
Deploy
Set the build and start commands, plus APP_KEY, LOG_LEVEL and SESSION_DRIVER if your start/env.ts requires them.
npx ezhst projects create my-project --link npx ezhst apps create my-app npx ezhst link --project <project-slug> --app <app-slug> npx ezhst build set --build "node ace build" --start "node build/bin/server.js" npx ezhst env set APP_KEY=<key> LOG_LEVEL=info npx ezhst env import .env npx ezhst deploy
Things to watch with npm
npm ci fails if the lockfile and package.json disagree. Run npm install locally and deploy again. npm 11 lockfiles need Node 24.
Commit package-lock.json. Without any lockfile, EasyHost falls back to npm install. To replace the install step, run ezhst build set --install "<command>".
Next steps
See the AdonisJS hub for every AdonisJS guide, or free AdonisJS hosting for what is included.
Frequently asked questions
How do I change the npm install command?
Run ezhst build set --install "<command>", then ezhst redeploy. Pass an empty string to return to auto-detection.
Start for free
Install the skill, choose Global or Local, then tell your agent to deploy. No credit card, no config files.
npx ezhst skill install