Projeto que encurta URLs.
- Node.js v12 ou maior.
- Docker e docker compose
- Postman
- NestJS
- Jest
- Docker
- Husky
- dotenv
- TypeORM
- MySQL
- JWT
- Clonar esse repositório
$ git clone https://github.com/Cristuker/teddy-api.git
- Instalar as dependências
$ npm i
- Criar o banco de dados
$ docker compose up -d ou docker-compose up -d # vai depender da versão instalada
- Rodar a aplicação
Ir para a raiz da aplicação e rodar cada serviço em um terminal
$ nest start shortner-api
$ nest start url-redirect
Na raiz do projeto existe um collection do postman para ser importada e usada para fazer requisições.
-
Isolar banco de dados nos testes e usar um banco em memoria, como usei o MySQL que foi me informado que é o banco usado por vcs ele não tem uma versão em memória.
-
Refatorar para tirar o use guards de todas as rotas
-
Optei por deixar o serviço de redirecionamento separado pois no primeiro momento vai ser o mais usado pensando no mundo real. Onde a mesma URL pode ser acessada diversas vezes. Fazer com que as consultas fiquem mais rápidas para garantir o redirecionamento mais rápido ou até mesmo fazer com que a operação de redirecionamento e constagem aconteçam de forma paralela mas sem que haja falha na contagem ou redirecionamento.
A documentação está disponivel no /api da aplicação
O redirecionamento é feito por outro serviço no seguinte respositório.
[ ] Configurar docker-compose para subir todo o ecossistema [ ] Migrar o modulo de auth para um serviço [ ] Organizar o projeto e mover coisas em comum para o modulo library [ ] Subir projeto na AWS [ ] Refazer documentação [ ] Aumentar coverage [ ] Criar github actions [ ] build [ ] test [ ] deploy
Made with ❤️ by Cristian