Microsserviço de notificações desenvolvido com nestjs, a fim de desenvolver o aprendizado sobre o framework e as tecnologias que se integram a ele.
Notification {
id String @id
recipientId String
content String
category String
readAt DateTime?
canceledAt DateTime?
createdAt DateTime @default(now())
@@index([recipientId]) //phantom foreign key
}
- GET /notifications/count/from/:recipientId - retorna a quantidade de notificações enviadas para um recipiente
- GET /notifications/from/:recipientId - retorna todas as notificações enviadas para um recipiente
- POST /notifications - cria uma notificaçao para um determinado recipiente
- PATCH /notifications/:id/cancel - cancela uma notificação
- PATCH /notifications/:id/read - marca uma notificação como lida
- PATCH /notifications/:id/unread - marca uma notificação como não lida
- Inversão de Dependência (Dependency Inversion)
- Repository Pattern
Este projeto foi desenvolvido com as seguintes tecnologias:
✔️ NodeJs
✔️ TypeScript
✔️ NestJs
✔️ SQLite
✔️ Prisma
✔️ Jest
# Clone o repositório
git clone https://github.com/the-riquelme/notifications-service.git
# Entre na pasta da aplicação
cd notifications-service
# Instale as dependẽncias do projeto
npm i
# Inicie o servidor
npm run start
# Acesse o servidor pelas rotas a partir de http://localhost:3000