Skip to content

Set up a modern Express.js web app with just one command. Simplify your project setup and jumpstart your development process effortlessly.

License

Notifications You must be signed in to change notification settings

fadhlaouir/create-express-node-starter

Repository files navigation

create-express-node-starter

CLI tool for bootstrapping Express.js projects with a predefined template.

Author GitHub license Downloads

Overview

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.

Features

  • 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.

Project Templates

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).

Installation

  1. 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
  2. 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
  1. 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.

Getting Started

  1. Navigate to Project Directory: After creating your new Express.js project, navigate to the project directory using the following command:
cd <project-name>
  1. Install Dependencies: Install the project dependencies by running:
npm install
  1. Configure Environment Variables: copy the .env.example file to .env and update the environment variables as needed.

  2. 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
    
  1. Explore API Documentation: Access the Swagger API documentation at http://localhost:5000/api-docs to explore and test your API endpoints.

  2. 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.

Contributing

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.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Sponsor on Buy Me a Coffee

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.

Buy Me A Coffee

About

Set up a modern Express.js web app with just one command. Simplify your project setup and jumpstart your development process effortlessly.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published