Commands Reference
Complete reference for all MoroJS CLI commands. From project initialization to deployment, find the exact syntax and options for every CLI operation.
On this page
Overview
The MoroJS CLI provides a comprehensive set of commands for project management, module creation, database operations, deployment, and development workflows. All commands support global options like --help and --version.
Quick Access
Global Options
Help & Information
--help, -hShow help information--version, -vShow version numberOutput & Logging
--verboseVerbose output (debug logs)--quietSuppress all output except errors--verbose and --quiet are mutually exclusive — passing both errors out.
Commands by Category
Project Management
1 commandinit
Initialize a new MoroJS project. Run with no flags for interactive prompts, or pass any flag (or --fast) to skip prompts and use sensible defaults. Runtime always defaults to node unless overridden with --runtime.
npx @morojs/cli init <name> [options]Options
| Flag | Description |
|---|---|
-t, --template <type> | Project template (api|microservice|fullstack) |
-r, --runtime <type> | Runtime adapter (node|vercel-edge|aws-lambda|cloudflare-workers) [default: node] |
-d, --database <type> | Database adapter (mysql|postgresql|sqlite|mongodb|redis|drizzle|none) |
-v, --validation <lib> | Validation library (zod|joi|yup|class-validator|multiple) |
-w, --websocket <adapter> | WebSocket adapter (auto-detect|socket.io|ws|none) |
-f, --features <list> | Features (auth,cors,helmet,compression,websocket,docs,rate-limit,cache,circuit-breaker,monitoring,testing) — typos surface a "did you mean…?" hint |
-p, --package-manager <pm> | Package manager for install scripts (npm|yarn|pnpm) [auto-detected from npm_config_user_agent] |
--fast | Skip all prompts and use sensible defaults |
--force | Overwrite existing directory without prompting |
--dry-run | Print what would be created (file tree, resolved config, equivalent command) without writing files |
--skip-git | Skip Git initialization |
--skip-install | Skip dependency installation |
Examples
npx @morojs/cli init my-api # interactive (guided prompts)npx @morojs/cli init my-api --fast # non-interactive, all defaultsnpx @morojs/cli init my-api --validation=zod # any flag = non-interactivenpx @morojs/cli init my-api --runtime=vercel-edge # override the node defaultnpx @morojs/cli init my-api --package-manager=pnpm --fast # use pnpm instead of npmnpx @morojs/cli init my-api --fast --dry-run # preview without writing filesnpx @morojs/cli init enterprise --features=auth,cors,websocket,docs --validation=multiple --websocket=socket.ioModule System
2 commandsmodule create
Create advanced modules with built-in features and middleware
npx @morojs/cli module create <name> [options]Options
| Flag | Description |
|---|---|
-f, --features <list> | Features (websocket,database,auth,cache,validation,docs) |
-d, --database <type> | Database adapter type |
-v, --validation <lib> | Validation library (zod|joi|yup|class-validator) |
-w, --websocket <adapter> | WebSocket adapter (socket.io|ws|none) |
-m, --middleware <list> | Built-in middleware (auth,cors,rate-limit,cache,validation) |
-r, --routes <pattern> | Route patterns (crud,rest,graphql) |
--auth-roles <roles> | Authentication roles |
--with-tests | Generate test files |
--with-docs | Generate API documentation |
Examples
npx @morojs/cli module create users --features=auth,database,validation --validation=joi --with-testsnpx @morojs/cli module create products --routes=crud --middleware=cache,validation --validation=zodnpx @morojs/cli module create chat --features=websocket,auth --websocket=socket.io --auth-roles=user,adminnpx @morojs/cli module create api --features=validation,docs --validation=multiple --with-docsmodule list
List all modules in the current project
npx @morojs/cli module listExamples
npx @morojs/cli module listDatabase Management
3 commandsdb setup
Setup database adapter with configuration
npx @morojs/cli db setup <type> [options]Options
| Flag | Description |
|---|---|
-h, --host <host> | Database host |
-p, --port <port> | Database port |
-u, --username <user> | Database username |
-d, --database <db> | Database name |
--with-migrations | Generate migration system |
--with-seeds | Generate seed system |
Examples
npx @morojs/cli db setup postgresql --with-migrationsnpx @morojs/cli db setup mysql --host=localhost --database=myappnpx @morojs/cli db setup mongodb --with-seedsdb migrate
Run database migrations
npx @morojs/cli db migrate [options]Options
| Flag | Description |
|---|---|
--up | Run pending migrations |
--down | Rollback last migration |
--reset | Reset all migrations |
Examples
npx @morojs/cli db migrate --upnpx @morojs/cli db migrate --downnpx @morojs/cli db migrate --resetdb seed
Seed database with sample data
npx @morojs/cli db seed [options]Options
| Flag | Description |
|---|---|
--environment <env> | Environment (development|staging|production) |
Examples
npx @morojs/cli db seed --environment=developmentnpx @morojs/cli db seed --environment=stagingConfiguration
3 commandsconfig init
Generate configuration files
npx @morojs/cli config init [options]Options
| Flag | Description |
|---|---|
-e, --environment <env> | Environment (development|staging|production) |
-d, --database <type> | Primary database type |
-r, --runtime <type> | Runtime adapter type |
Examples
npx @morojs/cli config init --environment=productionnpx @morojs/cli config init --database=postgresql --runtime=vercel-edgeconfig validate
Validate configuration files
npx @morojs/cli config validateExamples
npx @morojs/cli config validateconfig env
Generate .env template
npx @morojs/cli config env [options]Options
| Flag | Description |
|---|---|
--environment <env> | Environment type |
Examples
npx @morojs/cli config env --environment=productionnpx @morojs/cli config env --environment=developmentMiddleware Management
2 commandsmiddleware add
Add middleware to your application
npx @morojs/cli middleware add <type> [options]Options
| Flag | Description |
|---|---|
-c, --config <json> | Middleware configuration |
Examples
npx @morojs/cli middleware add auth --config='{"strategy":"jwt","expiresIn":"7d"}'npx @morojs/cli middleware add rate-limit --config='{"requests":100,"window":60000}'npx @morojs/cli middleware add cors --config='{"origin":"*"}'middleware list
List available middleware
npx @morojs/cli middleware listExamples
npx @morojs/cli middleware listDeployment
3 commandsdeploy vercel
Deploy to Vercel Edge Runtime
npx @morojs/cli deploy vercel [options]Options
| Flag | Description |
|---|---|
--domain <domain> | Custom domain |
Examples
npx @morojs/cli deploy vercelnpx @morojs/cli deploy vercel --domain=myapi.vercel.appdeploy lambda
Deploy to AWS Lambda
npx @morojs/cli deploy lambda [options]Options
| Flag | Description |
|---|---|
--region <region> | AWS region |
--memory <mb> | Memory allocation |
Examples
npx @morojs/cli deploy lambda --region=us-west-2npx @morojs/cli deploy lambda --region=us-east-1 --memory=1024deploy workers
Deploy to Cloudflare Workers
npx @morojs/cli deploy workers [options]Options
| Flag | Description |
|---|---|
--name <name> | Worker name |
Examples
npx @morojs/cli deploy workers --name=my-workernpx @morojs/cli deploy workersDevelopment Tools
4 commandsdev
Development server with hot reload
npx @morojs/cli dev [options]Options
| Flag | Description |
|---|---|
--port <port> | Port number |
--watch <path> | Watch directory |
Examples
npx @morojs/cli dev --port=3000npx @morojs/cli dev --watch=./modulesbuild
Build for production
npx @morojs/cli build [options]Options
| Flag | Description |
|---|---|
--target <target> | Build target (lambda|vercel|workers) |
--minify | Minify output |
Examples
npx @morojs/cli build --target=lambda --minifynpx @morojs/cli build --target=verceltest
Run tests
npx @morojs/cli test [options]Options
| Flag | Description |
|---|---|
--watch | Watch mode |
--coverage | Generate coverage report |
Examples
npx @morojs/cli test --watch --coveragenpx @morojs/cli testlint
Lint and format code
npx @morojs/cli lint [options]Options
| Flag | Description |
|---|---|
--fix | Auto-fix issues |
Examples
npx @morojs/cli lint --fixnpx @morojs/cli lintSecurity & Analysis
1 commandsecurity:scan
Security analysis and vulnerability scanning
npx @morojs/cli security:scanExamples
npx @morojs/cli security:scan