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


Mais 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

Eu enviarei o conteúdo postado aqui no blog. Sem Spam =)

Engenheiro de software experiente, formado em Engenharia Elétrica, com mais de 10 anos de experiência prática na construção de aplicativos móveis, web e back-end robustos e escaláveis em vários projetos, principalmente no setor de fintech. Mobile (React Native), Web (React e Next.JS) e Backend (Node.JS, PHP e DJANGO). Meu objetivo é criar produtos que agreguem valor às pessoas. - © 2024, Abílio Azevedo