O projeto é uma API REST para servir uma aplicação de Lista de tarefas, seguindo o padrão CRUD, com sistema de notificação.
- Projeto planejado e desenvolvi por mim.
- Finalidade: aprendizado, prática e portfólio.
Inicialmente teve o objetivo de consolidar meus conhecimentos de Back-end e Engenharia de Software, além de praticar a utilização de Node.js com Express e Prisma Studio. O objetivo agora é continuar utilizando esse projeto para praticar, aprimorando-o com as novas habilidades, tecnologias e ferramentas que adquiro.
npm i
É necessário criar um cluster no MongoDB Atlas ou configurar um banco de dados mongoDB para o prisma studio. A url deve ser colocada em uma variável de ambiente no arquivo .env nomeada de DATABASE_URL.
- Recomendo criar o cluster no Atlas, pois será muito mais rápido e fácil.
v2.0.0 | v2.1.0 | |
---|---|---|
TypeScript | Overnight.js | |
Node.js | Http status codes | |
Express | Pino | |
SQLite | Express pino logger | |
Prisma Studio | Node cache | |
Vitest | Supertest | |
Class-validator | SQLite → MongoDB | |
MongoDB Atlas | ||
Swagger-ui express | ||
Express openapi validator | ||
Express rate limit | ||
Github actions | ||
Node Config | ||
Bcrypt | ||
Json Web Token |
- Link para o código da versão nas badges.
O projeto teve seu desenvolvimento iniciado com um back-end simples e básico.
O projeto passou a ser uma API REST, CRUD, com sistema de notificação, desenvolvida com Node.js, Express e Typescript, aplicando testes unitários,
validações, DDD, TDD, in memory database, factory pattern, singleton, inversão de dependência e princípios SOLID.
Nesta atualização, estou aprimorando testes, mocks, testes end to end, tratando erros, status code, logging, cache, graceful
shutdown, troca do banco de dados, documentação OpenAPI, workflow, autenticação com criptografia e refatoração.