DEV Community

Petar Stevovski
Petar Stevovski

Posted on • Edited on

Generate NodeJS / Express project

I've made a simple CLI program that helps you generate your NodeJS / Express project structure, based on your selected configuration.

You can check it out here: express-app-cli.

Alt Text

It creates the following project structure:

tests/ - Unit and integration tests views/ - If using view engines (pug, handlebars etc.) src/ app.ts - Main entry point of the application api/ index.js - Main entry point for all defined routes routes/ - All the routes go in this folder services/ - Business logic controllers/ - Route controllers (handlers) config/ - ENV's and other configuration related stuff loaders/ - Splitting the start up process (express, database connection, CRON jobs etc.) models/ - Database models middlewares/ - All custom middlewares (authentication, authorization etc.) utils/ - Utility functions (e.g. validations) jobs/ - CRON jobs types/ - All the types and interfaces that we'll use 
Enter fullscreen mode Exit fullscreen mode

It currently supports a couple of configuration options:

  • Languages: Javascript, Typescript
  • Databases: MongoDB, MySQL, Postgres, SQLite
  • Testing libraries: Jest, Chai, Mocha
  • Templating engines: Handlebars, PUG, EJS
  • ORMs:
    • Mongoose (installed by default with MongoDB)
    • Sequelize
    • TypeORM

You can install it globally trough:

npm install -g express-app-cli

yarn add global express-app-cli

Then to use it:

express-app < project-directory > [options]

It still has some work to be done (testing, refactoring). If you have any ideas, or find any bugs, feel free to open a PR / Issue.

Top comments (3)

Collapse
 
sroehrl profile image
neoan

Nice project! I gladly give it a try

Some comments may only be visible to logged-in visitors. Sign in to view all comments.