A scalable notification service built with NestJS, Prisma, PostgreSQL, Redis, and BullMQ.
- Multi-channel notifications
- SMS
- Push
- In-App
- User notification preferences
- Delivery tracking
- Priority-based processing
- Queue-driven architecture
- Delivery-level retries
- NestJS
- TypeScript
- Prisma
- PostgreSQL
- Redis
- BullMQ
Notification API
↓
Create Notification
↓
Create Deliveries
↓
Queue Routing
email-queue
sms-queue
push-queue
inapp-queue
↓
Workers
↓
Providers
↓
External Channels
Work in Progress
- Notification creation
- Delivery record creation
- User preferences
- Redis setup
- BullMQ setup
- Queue architecture design
- Queue routing
- Workers
- Channel providers
- Retry mechanism
- Dead Letter Queues (DLQ)
- Observability & metrics