Este projeto consiste em uma aplicação que lê um arquivo CSV com dados dos prêmios Golden Raspberry Awards, armazena esses dados em um banco de dados relacional e fornece uma API REST para retornar os produtores com os menores e maiores intervalos entre vitórias.
- Linguagem: TypeScript / NodeJS v20.17.0
- Framework: Express
- Banco de Dados: SQLite (em memória)
- ORM: Knex
- Testes: Jest
Siga os passos abaixo para configurar e rodar o projeto localmente:
-
Clone este repositório:
git clone https://github.com/felipebrandes/gr-awards.git
-
Navegue até o diretório do projeto:
cd gr-awards -
Instale as dependências:
npm i
-
Inicie o servidor:
npm run start
-
Para rodar os testes:
npm run test
Após iniciar o servidor, a API estará disponível em http://localhost:3000 (porta padrão).
Retorna os produtores com os menores e maiores intervalos entre vitórias no Golden Raspberry Awards.
-
URL:
/winners/min-max-interval -
Method:
GET -
Response:
{ "min": [ { "producer": "Produtor 1", "interval": 1, "previousWin": 2000, "followingWin": 2001 } ], "max": [ { "producer": "Produtor 2", "interval": 10, "previousWin": 1980, "followingWin": 1990 } ] }