Skip to content

VictorMello1993/NLW6

Repository files navigation

1 - NLW #05 - 1920x1080

GitHub language count GitHub last commit License

Visão geralRecursosComeçandoAbrindo a APIBanco de dadosPossíveis melhorias


🌎 Visão geral

Aplicação construída durante o evento NLW Together, promovido por Rocketseat. Esse projeto visa a demonstração da utilização de uma API da NLW Valoriza, com propósito de consolidar os conhecimentos de back-end com Node.js e Typescript. A aplicação consiste no gerenciamento de elogios de usuários, ou seja, um usuário logado no sistema poderá enviar mensagens de elogios uns aos outros. A única restrição é que somente usuários administradores que podem cadastrar as tags de cada elogio a ser feito por algum usuário.


🔧 Recursos


🚩Começando

1 - Clone o repositório

git clone https://github.com/VictorMello1993/NLW6.git

2 - Abra VS Code e abra a pasta NLW6 como pasta raíz do projeto

3 - Abra o terminal e instale todas as dependências do projeto

NPM

npm install

Em seguida, abrir o servidor digitando o comando abaixo:

npm run dev

Yarn

Ou, se preferir, se tiver yarn instalado, executar o comando abaixo para instalar as dependências:

yarn

Em seguida, para abrir o servidor, digitar o comando abaixo:

yarn dev

⚙️Abrindo a API

Para abrir todas as rotas da API, clique no botão abaixo e importe o workspace sugerido.

Run in Insomnia}

Caso não tenha Insomnia instalado, baixe aqui


🛢️Banco de dados

Para visualizar todas as tabelas geradas pela aplicação, baixe o Beekeeper Studio, software de gerenciamento de banco de dados. Neste projeto utilizamos SQLite, então para abrir a conexão com o banco de dados, basta procurar pelo arquivo database.sqlite. Teste para verificar se a conexão ocorrerá com êxito, e então, clique em Connect.

Screenshot_1

Pronto, a conexão já está aberta, e poderá realizar as consultas.


Possíveis melhorias

  • Implementar requisições de obter usuário e tag pelo id, e elogios enviados e recebidos pelos usuários pelo id
  • Implementar requisições de obter elogios por usuário remetente, destinatário e pelo id da tag
  • Refatorar as rotas deixando-as isoladas em módulos por entidade
  • Trocar SQLite por outro banco de dados à escolha (MySQL, SQLServer, MongoDB, etc)
  • Verificar a possibilidade de implementar validações da API utilizando bibliotecas de terceiros
  • Criar uma classe personalizada para tratamento de exceções
  • Incluir testes unitários e de integração com Jest

Versões do README

Bandeira do Brasil Inglês | Bandeira dos Estados Unidos Português