Skip to content

Runtime Commands

Start, serve, and manage your application's runtime processes — API server, queue workers, scheduler, UI, and developer tools.

bash
npm run maker <command> [options]
bash
pnpm maker <command> [options]
bash
yarn maker <command> [options]
bash
bun maker <command> [options]

Development Server

dev

Start the full development stack — API server, UI, queue worker (if Redis enabled), and optional dev tools — all in parallel with a single command.

What starts:

ProcessStarted whenCommand
API serverAlwaysserve --src (hot-reload via tsx watch)
UIUI != "false"Vite dev server on port 5173
Queue workerREDIS != "false"queue:work --queue=default,mail --src
Optional tools--view / --with flagsMailDev, Redis Commander, Drizzle Studio

All child processes are tracked. If any required process exits unexpectedly, the entire stack shuts down.

bash
npm run maker dev
bash
pnpm maker dev
bash
yarn maker dev
bash
bun maker dev

Additional tools

bash
npm run maker dev -- --view=redis,maildev,studio
npm run maker dev -- --with-redis-view --with-maildev --with-db-studio
bash
pnpm maker dev --view=redis,maildev,studio
pnpm maker dev --with-redis-view --with-maildev --with-db-studio
bash
yarn maker dev --view=redis,maildev,studio
yarn maker dev --with-redis-view --with-maildev --with-db-studio
bash
bun maker dev --view=redis,maildev,studio
bun maker dev --with-redis-view --with-maildev --with-db-studio
ToolFlagWhat it provides
Redis Commanderredis / --with-redis-viewWeb UI at port 1369 to inspect Redis keys
MailDevmaildev / --with-maildevSMTP server at port 1089 + web UI at port 1080 to view sent emails
Drizzle Studiostudio / --with-db-studioWeb UI at local.drizzle.studio for database browsing

ui:dev

Start only the UI dev server (alias: admin:dev). Useful when you want to run the API separately.

bash
npm run maker ui:dev
bash
pnpm maker ui:dev
bash
yarn maker ui:dev
bash
bun maker ui:dev

Production Server

serve

Start the HTTP API server.

Flags:

FlagDefaultDescription
--prodRun compiled dist/src/framework/server.js
--runtime <name>nodeRuntime: node or bun
--watchWatch for file changes (source mode)
--srcForce source mode even if dist/ exists
bash
npm run maker serve
npm run maker serve -- --prod
npm run maker serve -- --prod --runtime=node
npm run maker serve -- --runtime=bun
npm run maker serve -- --watch
npm run maker serve -- --src
bash
pnpm maker serve
pnpm maker serve --prod
pnpm maker serve --prod --runtime=node
pnpm maker serve --runtime=bun
pnpm maker serve --watch
pnpm maker serve --src
bash
yarn maker serve
yarn maker serve --prod
yarn maker serve --prod --runtime=node
yarn maker serve --runtime=bun
yarn maker serve --watch
yarn maker serve --src
bash
bun maker serve
bun maker serve --prod
bun maker serve --prod --runtime=node
bun maker serve --runtime=bun
bun maker serve --watch
bun maker serve --src

Queue

queue:work

Start a BullMQ queue worker that processes jobs from named queues.

FlagDefaultDescription
--queue <names>defaultComma-separated queue names (e.g. default,mail,maintenance)
--prodRun from compiled dist/ instead of source
--runtime <name>nodeRuntime: node or bun
--srcForce source mode even if dist/ exists
bash
npm run maker queue:work
npm run maker queue:work -- --queue=mail
npm run maker queue:work -- --queue=default,mail,maintenance
npm run maker queue:work -- --prod
npm run maker queue:work -- --queue=default,mail --prod --runtime=node
bash
pnpm maker queue:work
pnpm maker queue:work --queue=mail
pnpm maker queue:work --queue=default,mail,maintenance
pnpm maker queue:work --prod
pnpm maker queue:work --queue=default,mail --prod --runtime=node
bash
yarn maker queue:work
yarn maker queue:work --queue=mail
yarn maker queue:work --queue=default,mail,maintenance
yarn maker queue:work --prod
yarn maker queue:work --queue=default,mail --prod --runtime=node
bash
bun maker queue:work
bun maker queue:work --queue=mail
bun maker queue:work --queue=default,mail,maintenance
bun maker queue:work --prod
bun maker queue:work --queue=default,mail --prod --runtime=node

queue:clear

Delete all queue-related Redis keys. Useful for resetting stale job state during development.

bash
npm run maker queue:clear
bash
pnpm maker queue:clear
bash
yarn maker queue:clear
bash
bun maker queue:clear

Scheduler

schedule:work

Start the cron scheduler worker. Executes scheduled tasks defined with defineSchedule() on their configured intervals.

bash
npm run maker schedule:work
npm run maker schedule:work -- --prod
bash
pnpm maker schedule:work
pnpm maker schedule:work --prod
bash
yarn maker schedule:work
yarn maker schedule:work --prod
bash
bun maker schedule:work
bun maker schedule:work --prod

Testing

test

Run Vitest backend tests once.

bash
npm run maker test
npm run maker test -- -- --filter=posts
bash
pnpm maker test
pnpm maker test --filter=posts
bash
yarn maker test
yarn maker test --filter=posts
bash
bun maker test
bun maker test --filter=posts

test:watch

Run Vitest backend tests in watch mode — re-runs on file changes.

bash
npm run maker test:watch
bash
pnpm maker test:watch
bash
yarn maker test:watch
bash
bun maker test:watch

test:coverage

Run Vitest backend tests with code coverage reporting.

bash
npm run maker test:coverage
bash
pnpm maker test:coverage
bash
yarn maker test:coverage
bash
bun maker test:coverage

test:ui

Run Vitest backend tests in the visual UI mode.

bash
npm run maker test:ui
bash
pnpm maker test:ui
bash
yarn maker test:ui
bash
bun maker test:ui

Dev Tools

maildev:view

Start MailDev — a combined SMTP server and web email viewer. Catches all outgoing emails during development.

ServicePort
SMTP1089
Web UI1080
bash
npm run maker maildev:view
bash
pnpm maker maildev:view
bash
yarn maker maildev:view
bash
bun maker maildev:view

redis:view

Start Redis Commander — a web UI to browse and manage Redis keys.

ServicePort
Web UI1369
bash
npm run maker redis:view
bash
pnpm maker redis:view
bash
yarn maker redis:view
bash
bun maker redis:view

vite:cache:clear

Clear Vite caches. Removes .vite directories from node_modules, src/resources, and other locations.

bash
npm run maker vite:cache:clear
bash
pnpm maker vite:cache:clear
bash
yarn maker vite:cache:clear
bash
bun maker vite:cache:clear

Summary

CommandDevelopmentProduction
devFull stack (API + UI + queue + tools)
serveAPI with watchAPI without watch
queue:workQueue worker from sourceQueue worker from dist
schedule:workScheduler from sourceScheduler from dist
ui:devVite dev server
testRun tests once
test:watchRun tests in watch mode
test:coverageRun tests with coverage
test:uiRun tests in UI mode
queue:clearDevelopment cleanup
maildev:viewEmail testing
redis:viewRedis inspection
vite:cache:clearCache cleanup

Released under the MIT License.