A service that expose an api and handle notifications sending to services providers, it use Bull a redis based queue to handle notification requests and rate limit them when needed. The service was designed to scale, so server, redis, db, and workers can each scale horizontally.
POST /notification
- Add notification to be served
GET /docs
- Swagger docs for the api
GET /queues
- Queues visualization dashboard
rename .env-example
to .env
Build and run containers
$ npm run docker-build
Enter bash of node container
$ npm run docker-start
Start services
$ npm start
Run test cases
$ npm test