create-menth-app
v1.0.9
Published
CLI to create a MENTH project. MENTH is a robust starter template designed to streamline the development process for web applications using MongoDB, Express, Node.js, TailwindCSS, and Handlebars. This template provides a solid foundation to build upon, en
Downloads
9
Maintainers
Readme
create-menth-app
create-menth-app
is a CLI tool that helps you quickly set up a new project with the MENTH stack (MongoDB, Express, Node.js, TailwindCSS, and Handlebars).
Overview
The MENTH stack is a robust combination of technologies designed to streamline the development process for web applications. This CLI tool provides a base template with best practices and a cohesive integration of the technologies involved.
Features
- MongoDB: A NoSQL database for storing and managing data.
- Express: A web application framework for Node.js, providing a robust set of features for building web and mobile applications.
- Node.js: A JavaScript runtime built on Chrome's V8 JavaScript engine, enabling server-side JavaScript execution.
- TailwindCSS: A utility-first CSS framework for rapidly building custom designs.
- Handlebars: A simple templating language to create HTML templates with embedded expressions.
Installation
To use the create-menth-app
CLI, you need to have Node.js installed on your machine. You can create a new MENTH project by running:
npx create-menth-app my-new-project
Usage
Create a new project:
npx create-menth-app my-new-project
Navigate to the project directory:
cd my-new-project
Install dependencies:
The
npx
command will automatically install the necessary dependencies. If you need to reinstall them later, run:npm install
Start the development server:
npm run dev
This command will start the server with live reloading enabled.
Project Structure
my-new-project/
├── .github/ # GitHub configuration files and workflows
├── src/
├── config/ # Configuration files and scripts
├── public/ # Static assets
│ ├── css/ # Stylesheets
│ ├── js/ # Scripts
│ ├── images/ # Images
│ ├── favicon.ico
├── components/ # Handlebars components and partials
├── controllers/ # Express route controllers
├── middleware/ # Express middleware
├── models/ # Mongoose models
├── routes/ # Express routes
├── services/ # Business logic and services
├── views/ # Handlebars templates
├── server/ # Server-related files
│ ├── db/ # Database connection files
│ │ └── db_connection.js # MongoDB connection configuration
│ └── server.js # Entry point for the server
├── .env # Environment variables
├── .eslintignore # ESLint ignore file
├── .eslintrc.json # ESLint configuration
├── .gitignore # Git ignore file
├── package.json # Node.js dependencies and scripts
├── README.md # Project documentation
└── tailwind.config.js # TailwindCSS configuration
Configuration
- MongoDB: Configure your MongoDB URI in the
.env
file. - TailwindCSS: Modify the
tailwind.config.js
file to customize your TailwindCSS setup. - Express: Add or modify routes in the
src/routes
directory and their corresponding controllers insrc/controllers
.
Contributing
We welcome contributions to improve create-menth-app
. To contribute, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/your-feature
). - Open a pull request.
License
This project is licensed under the MIT License. See the LICENSE file for more details.