$ ErwinMVC
A lightweight, full-featured MVC framework for Node.js 20+ built with TypeScript. ErwinMVC gets you from zero to a working web application in seconds, with sensible defaults and optional features you can add as needed.
quick start
npx @erwininteractive/mvc init myapp ### features
- - Express — Fast, minimal web framework under the hood
- - EJS + Alpine.js — Server-side templating with reactive client-side components
- - Optional Database — Add Prisma + PostgreSQL when you need it
- - Optional Redis Sessions — Scalable session management
- - JWT Authentication — Secure token-based auth with bcrypt
- - CLI Tools — Scaffold apps and generate models/controllers
- - CI/CD Ready — Built-in GitHub Actions workflow generation for automated testing and deployment
### philosophy
I built ErwinMVC because I wanted something between "figure it out yourself" and "here's 100 dependencies you don't need." It's opinionated where it matters and flexible where it doesn't.
Start simple — just routes and views. Add a database when you need persistence. Add authentication when you need users. The framework grows with your project instead of front-loading complexity.
### cli commands
npx @erwininteractive/mvc init <dir> — Create a new app npx erwinmvc generate resource <name> — Generate model + controller + views npx erwinmvc generate controller <name> — Generate a CRUD controller npx erwinmvc generate model <name> — Generate a database model ### learn more
Full documentation, examples, and detailed instructions are available in the README.