
Product
Introducing Webhook Events for Alert Changes
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.
A CLI tool to scaffold complete Node.js MVC projects with TypeScript, just like Laravel
A powerful CLI tool to scaffold complete Node.js MVC projects with multiple language and framework options, just like Laravel does.
npm install -g create-node-mvc
create-node-mvc my-app
This will start an interactive prompt to configure your project:
| Language | Framework | Structure | Best For |
|---|---|---|---|
| TypeScript | Express | Traditional MVC | Full-stack web apps |
| JavaScript | Express | Traditional MVC | Simple APIs & websites |
| TypeScript | NestJS | Module-based | Enterprise applications |
| JavaScript | NestJS | Module-based | Modern APIs |
my-app/
βββ src/
β βββ config/ # Database and app configuration
β βββ controllers/ # Route controllers
β βββ models/ # Database models
β βββ routes/ # Express routes
β βββ middlewares/ # Custom middlewares
β βββ utils/ # Utilities (TypeScript)
β βββ validators/ # Joi validators (JavaScript)
β βββ app.ts/js # Express application
βββ tests/ (optional)
βββ .env.example
βββ tsconfig.json (TypeScript only)
βββ package.json
my-app/
βββ src/
β βββ auth/ # Authentication module
β β βββ dto/ # Data transfer objects
β β βββ guards/ # Auth guards
β β βββ strategies/ # Passport strategies
β β βββ auth.controller.ts
β β βββ auth.service.ts
β β βββ auth.module.ts
β βββ users/ # Users module
β β βββ dto/ # User DTOs
β β βββ entities/ # User entities
β β βββ users.controller.ts
β β βββ users.service.ts
β β βββ users.module.ts
β βββ config/ # Configuration
β βββ app.module.ts # Root module
β βββ main.ts/js # NestJS bootstrap
βββ test/ (optional)
βββ tsconfig.json (TypeScript only)
βββ package.json
create-node-mvc my-api
# Select: TypeScript β Express β MongoDB β API Only
cd my-api
npm install
npm run dev
create-node-mvc my-enterprise-app
# Select: TypeScript β NestJS β PostgreSQL β API Only β Docker + Testing
cd my-enterprise-app
npm install
npm run start:dev
create-node-mvc my-simple-api
# Select: JavaScript β Express β MongoDB β API Only
cd my-simple-api
npm install
npm start
After generating your project, you can use these commands:
npm start # Start production server
npm run dev # Start development server with nodemon/ts-node
npm run build # Compile TypeScript (TypeScript only)
npm test # Run tests (if testing enabled)
npm run lint # Run ESLint (if linting enabled)
npm run start # Start production server
npm run start:dev # Start development server with watch
npm run start:debug # Start with debugging
npm run build # Build the application
npm run test # Run unit tests
npm run test:e2e # Run end-to-end tests
Your generated project includes a .env.example file. Copy it to .env and configure:
# Database
DATABASE_URL=mongodb://localhost:27017/your-app
# or for SQL databases
DATABASE_URL=postgresql://user:password@localhost:5432/your-app
# JWT
JWT_SECRET=your-super-secret-jwt-key
# Server
PORT=3000
NODE_ENV=development
# CORS (optional)
CORS_ORIGIN=http://localhost:3000
// src/routes/example.ts
import { Router } from "express";
const router = Router();
router.get("/", (req, res) => {
res.json({ message: "Hello World" });
});
export default router;
# Generate new module
nest g module products
nest g controller products
nest g service products
We welcome contributions! Please feel free to submit a Pull Request.
To work on this CLI tool:
git clone https://github.com/your-username/create-node-mvc.git
cd create-node-mvc
npm install
npm run dev
| Feature | create-node-mvc | create-next-app | @nestjs/cli |
|---|---|---|---|
| Multiple Languages | β TS & JS | β TS only | β TS only |
| Multiple Frameworks | β Express & NestJS | β Next only | β NestJS only |
| Database Support | β 4 databases | β None | β Manual setup |
| Authentication | β Built-in JWT | β Manual | β Manual |
| Docker Setup | β Optional | β Manual | β Manual |
| Testing Setup | β Pre-configured | β Manual | β Basic |
MIT Β© [Zebix]
Made with β€οΈ for the Node.js community
Like Laravel's Artisan for Node.js π
FAQs
A CLI tool to scaffold complete Node.js MVC projects with TypeScript, just like Laravel
We found that js-mvc-app demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.Β It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.

Product
Socket now scans OpenVSX extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.