JSPM

production-express-app

1.0.5
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q23305F
  • License MIT

A professional CLI tool to generate a production-ready Express backend boilerplate with clean architecture and modern folder structure.

Package Exports

  • production-express-app
  • production-express-app/lib/helpers.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (production-express-app) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Production Express App CLI npm version Support via Razorpay

A professional CLI tool to generate a production-ready Express.js backend boilerplate with clean architecture, modern folder structure, and dependency setup.

  • Supports JavaScript and TypeScript
  • Choose between CommonJS and ESModule
  • Clean scalable folder structure
  • Pre-configured with .env, Docker, ESLint, Prettier, Swagger, and more!

πŸ“¦ Installation

Install globally via npm:

npm install -g production-express-app

Use it with npx (no need to install globally):

npx production-express-app

You'll be prompted to select:

  • Project name
  • Language (JavaScript / TypeScript)
  • Module type (CommonJS / ESModule)
  • Dependencies to install (express, dotenv, mongoose, cors, helmet)
  • Whether to use a src/ folder or keep files in the root

πŸ“ Folder Structure (with src/)

project-name/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ config/               # App config (DB, env, logger)
β”‚   β”œβ”€β”€ api/v1/               # Versioned APIs
β”‚   β”‚   β”œβ”€β”€ controllers/
β”‚   β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   β”œβ”€β”€ services/
β”‚   β”‚   β”œβ”€β”€ validators/
β”‚   β”‚   β”œβ”€β”€ models/
β”‚   β”‚   └── docs/
β”‚   β”œβ”€β”€ middlewares/
β”‚   β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ constants/
β”‚   β”œβ”€β”€ jobs/
β”‚   β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ app.js / app.ts
β”‚   └── server.js / server.ts
β”œβ”€β”€ tests/
β”‚   β”œβ”€β”€ unit/
β”‚   └── integration/
β”œβ”€β”€ scripts/
β”œβ”€β”€ .env
β”œβ”€β”€ .env.example
β”œβ”€β”€ Dockerfile
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ .gitignore
β”œβ”€β”€ .eslintrc.js
β”œβ”€β”€ .prettierrc
β”œβ”€β”€ swagger.yaml
└── README.md

βš™οΈ Features

  • βœ… Express app boilerplate
  • βœ… TypeScript or JavaScript
  • βœ… CommonJS or ESModules
  • βœ… src/ optional
  • βœ… Prettier and ESLint preconfigured
  • βœ… Swagger/OpenAPI YAML
  • βœ… Docker & Compose templates
  • βœ… Test folders for unit & integration
  • βœ… Modular structure for scaling

πŸ”§ Example Output

Here’s a sample run:

? Enter project name: my-app
? Choose language: TypeScript
? Choose module type: ESModule
? Select dependencies to install: express, dotenv, mongoose
? Do you want to use a 'src' folder? Yes

βœ” Project created successfully!


πŸ›  Dependencies

Supports installing these by default:

  • express
  • dotenv
  • mongoose
  • cors
  • helmet

πŸ§‘β€πŸ’» Author

Jaydip Feel free to reach out on GitHub


πŸ“„ License

This project is licensed under the MIT License.


🀝 Contributing

Contributions, issues, and feature requests are welcome!

  1. Fork the repo
  2. Create your feature branch (git checkout -b feature/my-feature)
  3. Commit your changes (git commit -m 'add my feature')
  4. Push to the branch (git push origin feature/my-feature)
  5. Open a Pull Request

⭐ Show Your Support

If you like this CLI, give it a ⭐ on GitHub or share it with others!