An open API service indexing awesome lists of open source software.

https://github.com/franciscowallison/nlw-06-nodejs

https://nlw-06-nodejs.herokuapp.com/
https://github.com/franciscowallison/nlw-06-nodejs

docker docker-compose mysql nodejs postgresql sqlite3

Last synced: 3 months ago
JSON representation

https://nlw-06-nodejs.herokuapp.com/

Awesome Lists containing this project

README

          

# [NLW#6] Start Project NodeJs e ...Docker, Docker-Compose, [Heroku](https://nlw-06-nodejs.herokuapp.com/), Sqlit, Mysql e Porstgres

NLW Valoriza



**NLW Valoriza** se trata de uma API feita em NodeJS, Typescript, Express sobre como compartilhar elogios para alguém que admiramos em nosso ambiente de trabalho.
Este projeto faz parte do 6 evento da NLW que tradicionalmente é oferecido pela time da [Rocketseat](https://rocketseat.com.br/),
O NLW Valoriza foi ensinado na Trilha de NodeJS pela professora [Dani Leão](https://github.com/danileao).

# NLW Valoriza

Tecnologias


  • Node JS

  • Typescript

  • Express

  • Typeorm

  • express-async-errors

  • reflect-metadata

  • class-transformer

  • Sqlite3

  • bcryptjs

  • JWT

  • uuid

  • cors

  • dotenv

  • docker

  • docker-composer

  • mysql

  • PostgreSQL

## Funcionalidades
- Cadastro de Usuários
- Cadastro de TAGS ( Elogios possíveis)
- Somente usuário Administrador
- Cadastro de Elogios
- ID do usuário
- ID da TAG
- Data da criação
- Autenticação de usuário
- Gerar Token JWT
- Validar usuário logado nas rotas necessárias
- Listagem de usuários
- Listagem de TAGS
- Listagem de elogios por usuário

## Regras

- Cadastro de usuário

[ x ] Não é permitido cadastrar mais de um usuário com o mesmo e-mail

[ x ] Não é permitido cadastrar usuário sem e-mail

- Cadastro de TAG

[ x ] Não é permitido cadastrar tag sem nome

[ x ] Não é permitido cadastrar mais de uma tag com o mesmo nome

[ x ] Não é permitido o cadastro por usuários que não sejam administradores

- Cadastro de elogios

[ x ] Não é permitido um usuário cadastrar um elogio para si

[ x ] Não é permitido cadastrar elogios para usuários inválidos

[ x ] O usuário precisa estar autenticado na aplicação

# Dia - 1 [Mission: Node.js] Aula 01 – Liftoff
````
# together
````
# Dia - 2 [Mission: Node.js] Aula 02 – Maximum Speed
````
# unidade
````
# Dia - 3 [Mission: Node.js] Aula 03 – In Orbit
````
# embuscadeevolução
````
# Dia - 4 [Mission: Node.js] Aula 04 – Landing
````
# legacy
````
# Dia - 5 [Mission: Node.js] Aula 05 - Surface Exploration
````
# juntos no próximo nível
````