/nlwValoriza

Projeto com criado para o intuito de criação de tags e elogios e a troca dele entre os usuários

Primary LanguageTypeScript

Valoriza

Projeto   |    Tecnologias   |    Diagrama   |    Como executar   |    Licença

License NLW 05

💻 Projeto

O Valoriza é uma aplicação que consiste em criação de usuários e elogios por meio de tags e comentários. Nele, fazemos (i) o cadastro de usuário, com atualização de fotos, config de perfil de admin, (ii) criação de tags (disponível apenas para admins da api) que serão utilizadas ao elogiar um outro usuário (por exemplo, pela sua proatividade, sua capacidade de ajudar, ...). O elogio é cadastrado ao realizar um comentário destinado a um usuário específico e vinculando a tag relacionada.

✨ Tecnologias

Esse projeto foi desenvolvido com as seguintes tecnologias:

🔶 O que foi feito ate agora

  • Criação de usuário
  • Criação de tags
  • Criação de elogios
  • Adicionar foto ao usuário
  • Autenticação JWT
  • Limite de requisião a api
  • Injeção de dependencia
  • Editar usuário
  • Aplicar conceitos SOLID e DDD

Regras

  • Cadastro de usuário

    • Não é permitido cadastrar mais de um usuário com o mesmo e-mail
    • Não é permitido cadastrar usuário sem e-mail
    • Não é permitido lista usuários que não sejam administradores
  • Cadastro de TAG

    • Não é permitido cadastrar tag sem nome
    • Não é permitido cadastrar mais de uma tag com o mesmo nome
    • Não é permitido o cadastro por usuários que não sejam administradores
  • Cadastro de elogios

    • Não é permitido um usuário cadastrar um elogio para si
    • Não é permitido cadastrar elogios para usuários inválidos
    • O usuário precisa estar autenticado na aplicação

Diagrama

Users

🚀 Como executar

  • Clone o projeto utilizando o comando git clone https://github.com/WesleyIsr4/nlwValoriza
  • Instale as dependencias do projeto com o comando yarn install ou npm install
  • Configure o ormconfig.json para o seu banco de dados
  • Execute o comando yarn ou npm + typeorm migrations:run para a criação das tabelas
  • Execute o servidor com o comando yarn dev:server ou npm dev:server

A aplicação pode ser acessada em localhost:3333.