Abílio Azevedo.

API NPS (Net Promote Score) - NLW4

Cover Image for API NPS (Net Promote Score) - NLW4
Abílio Azevedo
Abílio Azevedo

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.

Confira aqui

Repositório com o código fonte aqui.

Por hoje é só pessoal.

#rumoAoPróximoNivel


More posts

Cover Image for App Igreja IPB-MP

App Igreja IPB-MP

App para minha igreja com funcionalidades de localização, eventos e contatos.

Abílio Azevedo
Abílio Azevedo
Cover Image for Imersão React edição Next JS da Alura!

Imersão React edição Next JS da Alura!

Desenvolvemos um app de QUIZES em NEXT.JS.

Abílio Azevedo
Abílio Azevedo

NewsLetter

I will send the content posted here. No Spam =)

Experienced Software Engineer with degree in Electrical Engineering with over 10 years of hands-on expertise in building robust and scalable mobile, web and backend applications across various projects mainly in the fintech sector. Mobile (React Native), Web (React and Next.JS) and Backend (Node.JS, PHP and DJANGO). My goal is to create products that add value to people. - © 2024, Abílio Azevedo