CLI tool for bootstrapping Express.js projects with a predefined template.
create-express-node-starter
is a versatile CLI tool designed to streamline the process of setting up a new Express.js project with Node.js. It provides a comprehensive boilerplate with essential features such as authentication, MongoDB integration, Swagger API documentation, and more, enabling developers to kick-start their API development journey quickly and efficiently.
- Express.js Integration: Built on top of Express.js, a fast, unopinionated, minimalist web framework for Node.js.
- MongoDB Support: Seamlessly integrates MongoDB, a popular NoSQL database, for efficient data storage and retrieval.
- Authentication and Authorization: Includes pre-configured authentication and authorization middleware for securing endpoints.
- Swagger API Documentation: Automatically generates API documentation using Swagger UI Express, simplifying API exploration and testing.
- Flexible Project Structure: Follows a modular project structure that promotes scalability, maintainability, and code organization.
- Extensible: Easily extend and customize the boilerplate to suit your specific project requirements.
create-express-node-starter
now offers three project templates to choose from:
- Basic Project 🌱: A basic Express.js project with Node.js and MongoDB setup.
- Product CRUD 🚀: An Express.js project with product CRUD operations.
- User CRUD AUTHENTIFICATION 🔒: An Express.js project with user CRUD operations and authentication (register and login).
-
Install CLI Tool: Before using
npx
to create a new Express.js project, make sure to install the CLI tool globally by running:-
For Windows:
npm install -g create-express-node-starter
-
For macOS or Linux:
sudo npm install -g create-express-node-starter
-
-
Create a New Project: To create a new Express.js project using
create-express-node-starter
, run:
- For Windows:
npx create-express-node-starter
- For macOS or Linux:
sudo npx create-express-node-starter
- Follow the Prompts: The CLI tool will guide you through the process of setting up your new project, allowing you to customize various options such as project name, description, author, and more.
- Navigate to Project Directory: After creating your new Express.js project, navigate to the project directory using the following command:
cd <project-name>
- Install Dependencies: Install the project dependencies by running:
npm install
-
Configure Environment Variables: copy the
.env.example
file to.env
and update the environment variables as needed. -
Start Development: Navigate to your project directory and run the following command to start the development server:
- For Windows:
npm run develop
- For macOS or Linux:
npm run develop:mac
-
Explore API Documentation: Access the Swagger API documentation at http://localhost:5000/api-docs to explore and test your API endpoints.
-
Generate CRUD Operations: After running the project, you can create CRUD operations using the following command:
npm run crud:operation
This command will create controllers, routes, and models for your CRUD operations. Choose between empty and minimal templates or remove existing CRUD components.
Contributions are welcome! If you have suggestions, feature requests, or bug reports, please open an issue on the GitHub repository. Pull requests are also encouraged. Please read the CONTRIBUTING.md file for more details.
This project is licensed under the MIT License. See the LICENSE file for details.
If you find this project valuable, consider supporting us through Buy Me a Coffee. Your sponsorship helps us maintain and improve the project, ensuring better features, updates, and support for the community.