A lightning-fast CLI tool to scaffold production-ready Express backend projects with MongoDB or MySQL, plugin-based architecture, and optional AI module support.
create-jerry is a backend scaffolding CLI inspired by tools like Vite and Create React App.
It generates a structured Express.js backend with:
- MongoDB OR MySQL support
- JavaScript OR TypeScript support
- Optional AI module (OpenAI integration)
- Plugin-based architecture (extensible design)
- Clean modular folder structure
- 🎯 Interactive CLI prompts (Inquirer-based)
- 🧠 Optional AI module (OpenAI integration)
- 🗄️ Database selection (MongoDB / MySQL)
- 🧾 JavaScript & TypeScript support
- 🔌 Plugin-based architecture system
- 📁 Production-ready folder structure
- ⚙️ Auto dependency injection in package.json
- 🚀 Fully working Express server setup
npx create-jerryThen follow prompts:
- Project name
- Database (MongoDB / MySQL)
- Language (JavaScript / TypeScript)
- AI module (Yes / No)
your-project/
├── src/
│ ├── config/
│ │ ├── db.js / db.ts
│ │ └── index.js
│ │
│ ├── modules/
│ │ ├── user/
│ │ └── ai/ (optional)
│ │
│ ├── routes/
│ │ └── index.js
│ │
│ ├── middlewares/
│ │ └── error.middleware.js
│ │
│ ├── utils/
│ │ └── asyncHandler.js
│ │
│ ├── app.js
│ └── server.js
│
├── .env
├── package.json
└── tsconfig.json (if TypeScript)
This CLI uses a plugin-based generator system:
- 🟢 MongoDB Plugin
- 🟡 MySQL Plugin
- 🤖 AI Plugin (OpenAI)
- Module generation (if required)
- Dependency injection
- Route injection
- Setup logic execution
✔ Project name? my-app
✔ Select Database MongoDB
✔ Select Language Typescript
✔ Add AI module? Yes- MongoDB configured project
- AI module added (optional)
- Routes auto-injected
- Dependencies installed dynamically
npm run dev # Development mode
npm start # Production mode
npm run build # TypeScript build (if TS)When enabled:
/ai/chatendpoint is created- OpenAI SDK installed
- Controller → Service → Provider architecture
- GPT-powered backend endpoint ready to use
- Mongoose integration
- Predefined User model + CRUD
- Auto connection setup
- mysql2 connection pool
- Prebuilt SQL queries
- Ready-to-use CRUD layer
Plugins follow this structure:
{
name: "plugin-name",
setup(),
inject,
dependencies
}- Extensible architecture
- Clean separation of concerns
- Easy future expansion (auth, redis, payments, etc.)
- Node.js
- Express.js
- Inquirer.js
- Chalk
- Nanospinner
- OpenAI SDK (optional)
- Mongoose / MySQL2
Because backend setup is repetitive:
- Folder structure setup ❌
- Database configuration ❌
- Boilerplate code ❌
Now:
npx create-jerryDone in seconds ⚡
- 🟦 Typescript Migration
- 🔐 Authentication plugin (JWT / OAuth)
- ⚡ Redis caching plugin
- 📦 Docker support
- 🧪 Testing setup (Jest)
- ☁️ Deployment presets
Tanmay Khanna
- GitHub: @TomLucasakaTGeek
- Project: JerrIt CLI
If this helped you:
- ⭐ Star the repo
- 🔁 Share with developers
- 🧩 Contribute plugins
MIT License
Built with ❤️ to make backend development faster and easier