@shuvamk/create-node-server
v1.5.0
Published
A CLI tool to create production-ready Node.js backend servers with TypeScript, Express, and best practices
Downloads
5
Maintainers
Readme
Express TypeScript Starter
A production-ready Express.js starter template with TypeScript, featuring comprehensive tooling, security best practices, and monitoring capabilities.
Features
- 🚀 TypeScript - Write better, more maintainable code
- 📊 OpenTelemetry - Distributed tracing out of the box
- 🔒 Security - Helmet, CORS, and rate limiting preconfigured
- 📝 API Documentation - Swagger/OpenAPI integration
- 🪵 Logging - Structured logging with Pino
- 🔍 Error Tracking - Sentry integration
- ⚡ Performance - Response compression
- 🧪 Testing - Jest setup for unit tests
- 💅 Code Quality - ESLint, Prettier, and Git hooks
Quick Start
npx create-express-ts-starter my-app
cd my-app
npm install
npm run devAvailable Scripts
npm run dev- Start development server with hot reloadnpm run build- Build for productionnpm start- Start production servernpm run lint- Lint code with ESLintnpm run format- Format code with Prettiernpm test- Run tests
Environment Variables
Copy .env.example to .env and configure:
cp .env.example .envSee .env.example for all available options.
Project Structure
src/
├── config/ # Configuration files
├── controllers/ # Route controllers
├── middleware/ # Express middleware
├── models/ # Database models
├── routes/ # Route definitions
├── services/ # Business logic
├── types/ # TypeScript types
├── utils/ # Utility functions
└── index.ts # App entry pointAPI Documentation
Swagger documentation is available at /api-docs when running the server.
Monitoring & Observability
Sentry
Error tracking and performance monitoring. Configure via SENTRY_DSN in .env.
OpenTelemetry
Distributed tracing enabled by default. Configure endpoint via OTEL_EXPORTER_OTLP_ENDPOINT.
Security
- Helmet for security headers
- CORS protection
- Rate limiting
- Request validation
Contributing
- Fork the repository
- Create your feature branch
- Commit using conventional commits
- Push to your branch
- Create a pull request
License
MIT
