Introduction
Express + Prisma Boilerplate is a production-ready template for building scalable REST APIs with modern Node.js technologies.
What You'll Learn
This documentation covers everything you need to build and deploy production APIs:
- Getting Started - Installation, configuration, and project structure
- Core Features - Authentication, database, caching, and background jobs
- Production - Deployment, monitoring, and testing
Tech Stack
Backend
Infrastructure
Monitoring
Features
- TypeScript - Full type safety across the application
- Prisma ORM - Type-safe database access with PostgreSQL
- JWT Authentication - Access/refresh token rotation with Redis sessions
- Redis Caching - Built-in caching layer and response caching middleware
- Background Jobs - BullMQ-powered queues with worker process
- Prometheus Metrics - Production monitoring at
/metrics - Docker Ready - Docker Compose with PostgreSQL, Redis, NGINX
Architecture
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ NGINX │────▶│ Express │────▶│ PostgreSQL │
│ Proxy │ │ API │ │ Database │
└─────────────┘ └──────┬──────┘ └─────────────┘
│
┌──────▼──────┐
│ Redis │
│ (Cache + │
│ Sessions) │
└──────┬──────┘
│
┌──────▼──────┐
│ BullMQ │
│ Workers │
└─────────────┘Documentation Map
For New Users
Start here to get up and running:
- Quick Start - Get running in 5 minutes
- Project Structure - Understand the codebase
- Configuration - Configure your environment
For Developers
Learn the core features:
- Authentication - JWT tokens, sessions, roles
- Database - Prisma models, CRUD, migrations
- Caching - Redis caching strategies
- Background Jobs - Queue workers and scheduling
For Production
Deploy with confidence:
- Deployment - Docker, NGINX, scaling
- Monitoring - Metrics, logging, alerting
- Testing - Unit tests, integration, CI/CD
Quick Links
| Component | Technology |
|---|---|
| Runtime | Node.js 18+ |
| Framework | Express 5 |
| Language | TypeScript |
| ORM | Prisma |
| Database | PostgreSQL |
| Cache | Redis (ioredis) |
| Queue | BullMQ |
| Validation | Zod |
| Metrics | prom-client |
Getting Help
- GitHub Issues - Bug reports and feature requests
- GitHub Discussions - Questions and community help