Commands Reference

Complete reference for all MoroJS CLI commands. From project initialization to deployment, find the exact syntax and options for every CLI operation.

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 number

Output & 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 command

init

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
FlagDescription
-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]
--fastSkip all prompts and use sensible defaults
--forceOverwrite existing directory without prompting
--dry-runPrint what would be created (file tree, resolved config, equivalent command) without writing files
--skip-gitSkip Git initialization
--skip-installSkip dependency installation
Examples
Example 1
npx @morojs/cli init my-api # interactive (guided prompts)
Example 2
npx @morojs/cli init my-api --fast # non-interactive, all defaults
Example 3
npx @morojs/cli init my-api --validation=zod # any flag = non-interactive
Example 4
npx @morojs/cli init my-api --runtime=vercel-edge # override the node default
Example 5
npx @morojs/cli init my-api --package-manager=pnpm --fast # use pnpm instead of npm
Example 6
npx @morojs/cli init my-api --fast --dry-run # preview without writing files
Example 7
npx @morojs/cli init enterprise --features=auth,cors,websocket,docs --validation=multiple --websocket=socket.io

Module System

2 commands

module create

Create advanced modules with built-in features and middleware

npx @morojs/cli module create <name> [options]
Options
FlagDescription
-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-testsGenerate test files
--with-docsGenerate API documentation
Examples
Example 1
npx @morojs/cli module create users --features=auth,database,validation --validation=joi --with-tests
Example 2
npx @morojs/cli module create products --routes=crud --middleware=cache,validation --validation=zod
Example 3
npx @morojs/cli module create chat --features=websocket,auth --websocket=socket.io --auth-roles=user,admin
Example 4
npx @morojs/cli module create api --features=validation,docs --validation=multiple --with-docs

module list

List all modules in the current project

npx @morojs/cli module list
Examples
Example 1
npx @morojs/cli module list

Database Management

3 commands

db setup

Setup database adapter with configuration

npx @morojs/cli db setup <type> [options]
Options
FlagDescription
-h, --host <host>Database host
-p, --port <port>Database port
-u, --username <user>Database username
-d, --database <db>Database name
--with-migrationsGenerate migration system
--with-seedsGenerate seed system
Examples
Example 1
npx @morojs/cli db setup postgresql --with-migrations
Example 2
npx @morojs/cli db setup mysql --host=localhost --database=myapp
Example 3
npx @morojs/cli db setup mongodb --with-seeds

db migrate

Run database migrations

npx @morojs/cli db migrate [options]
Options
FlagDescription
--upRun pending migrations
--downRollback last migration
--resetReset all migrations
Examples
Example 1
npx @morojs/cli db migrate --up
Example 2
npx @morojs/cli db migrate --down
Example 3
npx @morojs/cli db migrate --reset

db seed

Seed database with sample data

npx @morojs/cli db seed [options]
Options
FlagDescription
--environment <env>Environment (development|staging|production)
Examples
Example 1
npx @morojs/cli db seed --environment=development
Example 2
npx @morojs/cli db seed --environment=staging

Configuration

3 commands

config init

Generate configuration files

npx @morojs/cli config init [options]
Options
FlagDescription
-e, --environment <env>Environment (development|staging|production)
-d, --database <type>Primary database type
-r, --runtime <type>Runtime adapter type
Examples
Example 1
npx @morojs/cli config init --environment=production
Example 2
npx @morojs/cli config init --database=postgresql --runtime=vercel-edge

config validate

Validate configuration files

npx @morojs/cli config validate
Examples
Example 1
npx @morojs/cli config validate

config env

Generate .env template

npx @morojs/cli config env [options]
Options
FlagDescription
--environment <env>Environment type
Examples
Example 1
npx @morojs/cli config env --environment=production
Example 2
npx @morojs/cli config env --environment=development

Middleware Management

2 commands

middleware add

Add middleware to your application

npx @morojs/cli middleware add <type> [options]
Options
FlagDescription
-c, --config <json>Middleware configuration
Examples
Example 1
npx @morojs/cli middleware add auth --config='{"strategy":"jwt","expiresIn":"7d"}'
Example 2
npx @morojs/cli middleware add rate-limit --config='{"requests":100,"window":60000}'
Example 3
npx @morojs/cli middleware add cors --config='{"origin":"*"}'

middleware list

List available middleware

npx @morojs/cli middleware list
Examples
Example 1
npx @morojs/cli middleware list

Deployment

3 commands

deploy vercel

Deploy to Vercel Edge Runtime

npx @morojs/cli deploy vercel [options]
Options
FlagDescription
--domain <domain>Custom domain
Examples
Example 1
npx @morojs/cli deploy vercel
Example 2
npx @morojs/cli deploy vercel --domain=myapi.vercel.app

deploy lambda

Deploy to AWS Lambda

npx @morojs/cli deploy lambda [options]
Options
FlagDescription
--region <region>AWS region
--memory <mb>Memory allocation
Examples
Example 1
npx @morojs/cli deploy lambda --region=us-west-2
Example 2
npx @morojs/cli deploy lambda --region=us-east-1 --memory=1024

deploy workers

Deploy to Cloudflare Workers

npx @morojs/cli deploy workers [options]
Options
FlagDescription
--name <name>Worker name
Examples
Example 1
npx @morojs/cli deploy workers --name=my-worker
Example 2
npx @morojs/cli deploy workers

Development Tools

4 commands

dev

Development server with hot reload

npx @morojs/cli dev [options]
Options
FlagDescription
--port <port>Port number
--watch <path>Watch directory
Examples
Example 1
npx @morojs/cli dev --port=3000
Example 2
npx @morojs/cli dev --watch=./modules

build

Build for production

npx @morojs/cli build [options]
Options
FlagDescription
--target <target>Build target (lambda|vercel|workers)
--minifyMinify output
Examples
Example 1
npx @morojs/cli build --target=lambda --minify
Example 2
npx @morojs/cli build --target=vercel

test

Run tests

npx @morojs/cli test [options]
Options
FlagDescription
--watchWatch mode
--coverageGenerate coverage report
Examples
Example 1
npx @morojs/cli test --watch --coverage
Example 2
npx @morojs/cli test

lint

Lint and format code

npx @morojs/cli lint [options]
Options
FlagDescription
--fixAuto-fix issues
Examples
Example 1
npx @morojs/cli lint --fix
Example 2
npx @morojs/cli lint

Security & Analysis

1 command

security:scan

Security analysis and vulnerability scanning

npx @morojs/cli security:scan
Examples
Example 1
npx @morojs/cli security:scan