API NPS (Net Promote Score) - NLW4
Essa semana participei da 4a NLW na Trilha de Node.JS.
Construimos uma aplicação para pesquisa de NPS
Vimos como criar uma aplicação em Express, utilizando um ORM chamado TypeORM que faz o parse dos dados do banco para TypeScript. Modelamos nosso banco de dados e fizemos as #migrations que guardam o histórico de alterações de nossas tabelas, criamos os #repositories que irão prover os meios de fazer a gestão de nosso banco de dados e também, fizemos os #controllers que são responsáveis por manipular o #requests e retornar o #response para ser enviado ao #cliente de nossa nossa aplicação. Fizemos os testes utilizando o framework jest com o preset tsjest e o pacote SuperTest, para os testes criamos um banco de dados específico e vimos conceitos de TDD. Por fim, utilizamos o módulo nodemailer para enviar emails integrado com o ethereal para envio de email de testes. Para montar o template do email utilizamos o handlebars.
No final da semana, fomos desafiados a ir além do projeto que desenvolvemos e o que eu fiz foi:
- Fiz os os testes em todas as rotas que foram desenvolvidas e para isso tive que mockar o módulo nodemailer;
- Desenvolvi a documentação usando o Swagger;
- Subi a aplicação em um servidor Heroku.
Repositório com o código fonte aqui.
Por hoje é só pessoal.
#rumoAoPróximoNivel