https://github.com/ramonfsk/valoriza-api
Projeto desenvolvido na missão NodeJS no NLW #06
https://github.com/ramonfsk/valoriza-api
class-transformer jwt nodejs restful-api solid typeorm typescript
Last synced: about 2 months ago
JSON representation
Projeto desenvolvido na missão NodeJS no NLW #06
- Host: GitHub
- URL: https://github.com/ramonfsk/valoriza-api
- Owner: ramonfsk
- License: mit
- Created: 2021-07-16T11:51:49.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-07-16T11:52:54.000Z (almost 5 years ago)
- Last Synced: 2025-02-19T05:32:17.661Z (over 1 year ago)
- Topics: class-transformer, jwt, nodejs, restful-api, solid, typeorm, typescript
- Language: TypeScript
- Homepage:
- Size: 224 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Valoriza-API
---
Cadastre elogios para outros usuários por meio de tags.
## 📝 Tabela de Conteúdo
- [Regras de Negócio](#rules)
- [Iniciando o Projeto](#getting_started)
- [Ferramentas Utilizadas](#built_using)
- [Aprendizados](#acknowledgement)
## 🏁 Iniciando o Projeto
Aqui são algumas instruções para que você consiga rodar o projeto localmente e consiga utilizá-lo.
### Pré-Requisitos
Certifique-se de que você possui a versão LTS do node e um dos gerenciadores de pacote (yarn ou NPM) instalados.
Eu utilizei yarn, mas o processo é bem parecido para o NPM.
```
node -v
yarn -v
npm -v
```
### Instalando
Faça o download do projeto em sua máquina e rode o comando com yarn para instalar as dependências
```
yarn
npm i
```
Aguarde até que todas as dependências sejam instaladas e a pasta node_modules apareça.
### Running
Para rodar a aplicação na porta 3000, utilize o comando:
```
yarn dev
```
#### Cadastro de Usuários
- [x] Não é permitido cadastrar mais de um usuário com o mesmo email
- [x] Não é permitido cadastrar um usuário sem email
#### Cadastro de tags
- [x] Não é permitido cadastrar mais de uma tag com o mesmo nome
- [x] Não é permitido cadastrar uma tag sem nome
- [x] Não é permitido cadastro de tags por usuários que não sejam administradores
#### Cadastro de Elogios
- [x] Não é permitido que o usuário cadastre um elogio para si
- [x] Não é permitido cadastrar elogios para usuários inexistentes ou inválidos
- [x] Usuário precisa estar autenticado na aplicação para cadastrar elogios
- [SQLite](https://www.sqlite.org/index.html) - SQLite
- [Express](https://expressjs.com/) - Server Framework
- [NodeJs](https://nodejs.org/en/) - Server Environment (Versão LTS)
- [TypeORM](https://typeorm.io/#/) - TypeORM
- [Yarn](https://yarnpkg.com/) - Yarn
- [Typescript](https://www.npmjs.com/package/typescript) - Typescript
- [JWT](https://jwt.io/) - JsonNWebToken
- [Class Transformer](https://www.npmjs.com/package/class-transformer) - ClassTransformer
- Princípios de Solid
- Autenticação com JWT
- Utilização do typeorm
- Construção de API Node com Typescript
- Utilização de SQLite
- Utilização da biblioteca class-transformer