create-express-modular generates a modular TypeScript backend with your ORM, validator, JWT auth and Docker — guarded by an opinionated architecture from day one.
npx create-express-modular my-api────────────────────────────────────────────────────── [CEM] taskflow-api dev server ◆ Project taskflow-api ◆ Entry src/server.ts ◆ Started 01 June 2026 21:20:00 ────────────────────────────────────────────────────── ▲ Server running on http://localhost:5000 21:20:01 ◈ MongoDB connected
Pick your ORM (Mongoose, Prisma, Drizzle), validator (Zod, Joi), auth and Docker setup. A complete domain-driven project is ready in seconds.
Every feature lives in its own folder with route, controller, service, model, validation, interface and constants — auto-wired into the router.
The build pipeline enforces naming conventions, detects orphan modules, and refuses to compile a malformed app.
tsx-powered dev server with near-instant restarts, a styled landing page, and a CLI that actually looks good in your terminal.
cem check runs typecheck, ESLint v9 flat config and Prettier in one rapid pipeline with inline error reporting.
Multistage Dockerfile and docker-compose with the correct database sidecar generated automatically.
Every operation you'd reach for during real development — generation, deletion, inspection, build, check — is one short command.
Browse all commands$ cem devStart the dev server with hot reload$ cem buildRun guards + compile TypeScript$ cem checkTypecheck, lint and format in one go$ cem listInspect modules, middlewares and env$ cem add module <Name>Scaffold a new feature module$ cem add middleware <name>Generate a custom middleware$ cem add env <KEY>Add a typed env variable everywhere$ cem remove <kind> <name>Safely delete with auto-unwiringSkip the boilerplate. Spin up your next Express backend with batteries included.