Abra o terminal na pasta onde se encontra o projeto e instale as dependências com:
npm installDepois abra o servidor:
npm run startApós abrir o servidor, estará disponível no endereço:
127.0.0.1:3000.
Uma Interface gráfica para todas as rotas de API do projeto está disponível em:
127.0.0.1:3000/api, com o GUI Swagger da OpenAPI.
Para utilizar da autenticação, é necesário criar um usuário com '/user', logar com o usuário em '/auth/login', e aplicar o Bearer token, clicando no botão verde "Authorize" na parte direita do topo da página, e inserindo o token recebido. (Apenas o token, sem aspas ou prefixos)
Ou diretamente fazer uma requisição utilizando o token como Bearer, usando alguma ferramenta como Postman.
Também há duas funções recorrentes no código:
1: Ao iniciar o servidor, ele é lentamente populado por 10 entradas de disputas.
2: A cada segundo do servidor, é conferido por disputas que tenham mais de 10 minutos de criação, disputas com mais de 10 minutos são marcadas como inativas.
Algumas partes do projeto foram feitas de forma a propor uma mais fácil avaliação do código, como algumas requisições de usuário que podem ser feitas sem autenticação (Como /user, que pode retornar todos os usuários e senhas) e o fato do segredo para a autenticação JWT ser hard-coded diretamente dentro do código.
Estou ciente de que esssas partes poderiam apresentar riscos de segurança em uma aplicação real em produção, e são práticas que não devem ser seguidas normalmente, mas foram colocadas para propor mais facilidade na hora de observar a lógica de backend, e como funcionam os métodos e funções.
Obrigado pela oportunidade!
Peço perdão de novo pelos imprevistos no caminho que causaram a demora e falta do front-end.