node-express-module-generator
v1.0.2
Published
CLI tool to generate Node.js Express modules (JS or TypeScript)
Maintainers
Readme
node-express-module-generator
A CLI tool to scaffold Node.js Express modules — supporting both JavaScript and TypeScript. Generates a complete, ready-to-use module structure including model, service, controller, routes, validation, and route config files.
Installation
Global (recommended)
npm install -g node-express-module-generatorLocal (project-level)
npm install --save-dev node-express-module-generatorUsage
Generate a full module
Generates all files (model, service, controller, routes, validation, route config) for a module in one command.
# JavaScript (default)
module-generator generate module <name>
# TypeScript
module-generator generate module <name> --ts-enabledExample:
module-generator generate module product
module-generator generate module product --ts-enabledThis creates the following files under src/modules/<name>/:
src/modules/product/
├── product.model.js # Mongoose schema & model
├── product.service.js # Business logic layer
├── product.controller.js # Request handlers
├── product.routes.js # Express router
├── product.validation.js # Request validation
└── route.config.js # Route configuration (path, prefix, etc.)With
--ts-enabled, all files are generated with a.tsextension.
Generate a single component
You can also generate an individual component instead of the full module.
module-generator generate <type> <name> [--ts-enabled]Available types:
| Type | Description |
| ------------ | -------------------------------- |
| module | Generates all files listed above |
| model | Mongoose schema & model |
| service | Business logic layer |
| controller | Request handlers |
| routes | Express router |
| validation | Request validation rules |
Examples:
module-generator generate model user
module-generator generate service order --ts-enabled
module-generator generate controller productHelp
module-generator --help
module-generator generate --helpOptions
| Option | Description | Default |
| -------------- | ----------------------------------------------- | ------- |
| --ts-enabled | Generate TypeScript files instead of JavaScript | false |
| --version | Show the CLI version | |
| --help | Show help information | |
After Generating a Module
Once a module is generated, the CLI will print next steps:
- Routes are auto-loaded — no manual registration needed.
- Customize the route path in
src/modules/<name>/route.config.js - Update the schema in
src/modules/<name>/<name>.model.js - Add business logic in
src/modules/<name>/<name>.service.js
Development
Clone the repository and install dependencies:
git clone https://github.com/your-username/node-express-module-generator.git
cd node-express-module-generator
npm installAvailable Scripts
| Command | Description |
| ---------------- | ---------------------------------- |
| npm test | Run tests using Jest |
| npm run lint | Lint source files using ESLint |
| npm run format | Format source files using Prettier |
Requirements
- Node.js
>= 14.0.0
