Giter VIP home page Giter VIP logo

projeto-futebol-clube's Introduction

⚽️ Boas vindas ao repositório do Projeto Futebol CLube!!

👨‍💻 O que foi desenvolvido

O PFC é um site informativo sobre partidas e classificações de futebol! 🚀

No time de desenvolvimento do PFC, onde eu Arthur Barbosa com meu squad ficou responsável por desenvolver uma API (utilizando o método TDD) e também integrar - através do docker-compose - as aplicações para que elas funcionem consumindo um banco de dados.

Neste projeto, eu construir um back-end dockerizado utilizando modelagem de dados através do Sequelize. Onde o desenvolvimento deve respeitar regras de negócio providas no projeto minha API deve ser capaz de ser consumida por um front-end já provido nesse projeto.

Para adicionar uma partida requer um token, portanto a pessoa deverá estar logada para fazer as alterações. Teremos um relacionamento entre as tabelas teams e matches para fazer as atualizações das partidas.

Meu back-end implementa regras de negócio para popular adequadamente a tabela disponível no front-end que será exibida para a pessoa usuária do sistema.

🌐 Orientações

⚙️ Estrutura do projeto

O projeto é composto de 4 entidades importantes para sua estrutura:

1️⃣ Banco de dados:

  • Será um container docker MySQL já configurado no docker-compose através de um serviço definido como db.
  • Tem o papel de fornecer dados para o serviço de backend.
    • Você também pode conectar a um Cliente MySQL (Workbench, Beekeeper, DBeaver e etc), colocando as credenciais configuradas no docker-compose no serviço db.

2️⃣ Back-end:

  • Deve rodar na porta 3001, pois o front-end faz requisições para ele nessa porta por padrão;
  • Sua aplicação deve ser inicializada a partir do arquivo app/backend/src/server.ts;
  • Garanta que o express é executado e a aplicação ouve a porta que vem das variáveis de ambiente;

3️⃣ Front-end:

  • O front já está concluído,
  • O front se comunica com serviço de back-end pela url http://localhost:3001 através dos endpoints que você deve construir nos requisitos.

4️⃣ Docker:

  • O docker-compose tem a responsabilidade de unir todos os serviços conteinerizados (backend, frontend e db) e subir o projeto completo com o comando npm run compose:up ou npm run compose:up:dev;
🔰 Iniciando o projeto
  1. Clone o repositório Usar link SSH
  • Entre na pasta do repositório que você acabou de clonar:

    • cd pasta-do-repositório
    1. Instale as dependências [Caso existam] *npm install

    2. Crie uma branch a partir da branch main

  • Verifique se você está na branch main

  • Exemplo: git branch
  • Se não estiver, mude para a branch main

    • Exemplo: git checkout main
  • Agora crie uma branch à qual você vai submeter os commits do seu projeto

  • Você deve criar uma branch no seguinte formato: nome-de-usuario-nome-do-projeto

    • Exemplo: git checkout -b maria-sd-023-a-trybe-futebol-clube
    1. Adicione as mudanças ao stage do Git e faça um commit
  • Verifique que as mudanças ainda não estão no stage

    • Exemplo: git status (deve aparecer listada a pasta maria em vermelho)
  • Adicione o novo arquivo ao stage do Git * Exemplo: * git add . (adicionando todas as mudanças - que estavam em vermelho - ao stage do Git) * git status (deve aparecer listado o arquivo maria/README.md em verde)

  • Faça o commit inicial

    • Exemplo: * git commit -m 'iniciando o projeto x' (fazendo o primeiro commit) * git status (deve aparecer uma mensagem tipo nothing to commit )
    1. Adicione a sua branch com o novo commit ao repositório remoto
  • Usando o exemplo anterior: git push -u origin meu-clube-futebol

⚠️ Configurações mínimas para execução do projeto

Na sua máquina você deve ter:

  • Sistema Operacional Distribuição Unix
  • Node versão 16
  • Docker
  • Docker-compose versão >=1.29.2

➡️ O node deve ter versão igual ou superior à 16.14.0 LTS:

  • Para instalar o nvm, acesse esse link;
  • Rode os comandos abaixo para instalar a versão correta de node e usá-la:
    • nvm install 16.14 --lts
    • nvm use 16.14
    • nvm alias default 16.14

➡️ Odocker-compose deve ter versão igual ou superior àˆ1.29.2:

📊 Tecnologias Utilizadas

projeto-futebol-clube's People

Contributors

arthurbarbosaoliveira avatar trybe-tech-ops avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.