Projeto Futebol Clube, desenvolvido por Artur Henrique no final do módulo de Back-end no curso de Desenvolvimento Web da Trybe. Eu fui aprovado com 100% dos requisitos.
O TFC é um site informativo dedicado a fornecer informações relevantes sobre partidas e classificações de futebol. Seja você um fã do esporte ou alguém que gosta de acompanhar os resultados, o TFC tem tudo o que você precisa.
📝 Proposta
O projeto visa a criação de um Back-end dockerizado, com a utilizando a modelagem de dados através do Sequelize. Durante o desenvolvimento, seguimos regras de negócio fornecidas no projeto. A API construída é capaz de ser consumida pelo front-end.
A API desenvolvida no backend oferecerá as seguintes funcionalidades:
Autenticação: Para adicionar uma partida, será necessário utilizar um token de autenticação. Isso garantirá que apenas usuários logados possam efetuar alterações no sistema, garantindo a segurança e controle de acesso adequados.
Relacionamento entre Tabelas: Será estabelecido um relacionamento entre as tabelas "teams" (times) e "matches" (partidas) para permitir a realização de atualizações nas partidas de forma consistente e organizada.
🐳 Com Docker
⚠ O seu docker-compose precisa estar na versão 1.29 ou superior. ⚠ Veja aqui a documentação para atualizar o docker-compose.
- Clone o repositório do GitHub:
git clone https://github.com/<your-username>/project-futebol-clube.git
Entre no diretório e instale as dependências:
cd tfc-tybe-futebol-clube
npm run install:apps
Rode os serviços frontend
, backend
e db
com o comando npm run compose:up
- O container com o
backend
irá rodar na portalocalhost:3001
e o container com ofrontend
irá rodar na portalocalhost:3000
.
docker-compose
irá falhar.
- Use o comando
docker logs app_backend
caso queira visualizar os logs dobackend
edocker logs app_frontend
caso queira visualizar os logs dofrontend
.
npm audit fix
! Ele atualiza várias dependências do projeto, e essa atualização gera conflitos com o avaliador.
EADDRINUSE
, quer dizer que sua aplicação já esta utilizando a porta 3000 || 3001
, seja com outro processo do Node.js (que você pode parar com o comando killall node
) ou algum container! Neste caso você pode parar o container com o comando docker stop <nome-do-container>
.
🧪 Rodandos os testes
Entre no diretório do backend:
cd app
cd backend
E rode o comando npm test
para rodar todos os testes ou npm run test:coverage
para os testes de cobertura.
npm audit fix
! Ele atualiza várias dependências do projeto, e essa atualização gera conflitos com o avaliador.
Node.js
e NPM
a ser utilizada é "node": ">=16.0.0"
e "npm": ">=7.0.0"
, como descrito na chave engines
no arquivo package.json
. Idealmente deve-se utilizar o Node.js na versão 16.14
, a versão na qual este projeto foi testado.