cem-cheatcode
v1.0.1
Published
Scaffold a full Express + MongoDB backend with JWT, CORS, BodyParser, etc.
Maintainers
Readme
cem-cheatcode (create-express-mongo-server)
🚀 Scaffold a ready-to-use Express + MongoDB server with essential tools like CORS, JWT, dotenv, body-parser, and more — with a single command.
✨ Features
- ✅ Express.js server setup
- ✅ MongoDB (via Mongoose) integration
- ✅ JWT authentication example route
- ✅ Environment variable support with
.env - ✅ CORS enabled
- ✅ Body parser setup
- ✅ Secure password hashing via bcryptjs
- ✅ Dev-friendly with
nodemon - ✅ Clean project structure and sensible defaults
📦 Installation
Use npx to scaffold the project in any directory:
npx cem-cheatcodeThen install dependencies and start your development server:
npm install
npm run dev🧱 Folder Structure
your-project/
├── index.js # Main server file
├── .env # Environment variables
├── package.json # Installed dependencies
└── .gitignore # Ignored files📌 Environment Variables (.env)
Make sure to update the .env file:
PORT=5000
MONGO_URI=mongodb://localhost:27017/yourdbname
JWT_SECRET=your_jwt_secret_key🔐 Sample JWT Protected Route
An example /protected route is included to demonstrate token validation.
Request:
GET /protected
Authorization: Bearer <your_token>index.js excerpt:
const token = req.headers.authorization?.split(' ')[1];
const decoded = jwt.verify(token, process.env.JWT_SECRET);📚 Included Packages
| Package | Purpose | | ------------ | --------------------------------- | | express | Web framework | | mongoose | MongoDB object modeling | | dotenv | Environment variable management | | cors | Cross-Origin Resource Sharing | | body-parser | Parse incoming request bodies | | jsonwebtoken | JWT authentication | | bcryptjs | Password hashing | | nodemon | Dev server auto-reload (dev only) |
🛠 Scripts
| Script | Command | Description |
| ------- | ------------------- | ------------------------ |
| start | node index.js | Start server |
| dev | nodemon index.js | Start server in dev mode |
🧪 Example Use Case
Want to quickly set up a backend for:
- A fullstack MERN app?
- A REST API?
- A practice project?
This package is for you — simple, fast, and extensible.
💡 Tips
- Consider creating routes, controllers, and models folders for larger projects.
- Integrate a frontend (React, Vue, Angular) and connect via HTTP.
📜 License
MIT © 2025 Oluwafemi Oyeniran
