A production-ready Express.js boilerplate using TypeScript, ESLint, Prettier, Docker, Docker Compose, Winston logging, Morgan HTTP logging, Helmet for security, express-rate-limit, and Yarn as the package manager.
- ⚙️ Express 5 with TypeScript
- 🧼 ESLint + Prettier for code linting and formatting
- 🐳 Docker & Docker Compose for dev and production
- 🌐 Helmet for security headers
- 🚫 Rate limiting with
express-rate-limit
- 📜 HTTP request logging with Morgan
- 🪵 Advanced logging using Winston and Daily Rotate File
- 🔐
.env
support withdotenv
- 📦 Yarn as the default package manager
- 📁 Clean and modular file structure
- Node v23.11.0
- Docker
git clone https://github.com/MANOJ-M-01/Express-Boilerplate.git
cd Express-Boilerplate
yarn install
yarn dev
Or using Docker:
docker-compose -f docker-compose-dev.yaml up --build
Command | Description |
---|---|
yarn dev |
Start development server with ts-node-dev |
yarn start |
Start server with ts-node |
yarn build |
Compile TypeScript to JavaScript |
yarn serve |
Run compiled code from dist/ |
yarn typecheck |
Type check without emitting output |
yarn lint |
Run ESLint |
yarn prettier:check |
Check formatting with Prettier |
yarn prettier:format |
Auto-format code with Prettier |
docker-compose -f docker-compose-dev.yaml up --build
docker-compose -f docker-compose-prod.yaml up --build
yarn lint
yarn prettier:check
yarn prettier:format
MIT License