Skip to content

Latest commit

 

History

30 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚽ ScoutMatch

ScoutMatch é uma aplicação full stack que realiza o match entre jogadores de futebol e times, com base em critérios como posição, perna boa, estilo de jogo, skill e faixa etária.

🚀 Tecnologias

🖥️ Backend • Java 17 • Spring Boot 3 • Spring Data JPA • H2 Database (em memória) • Postman (para testes da API)

🌐 Frontend • React • Vite • Tailwind CSS • Fetch API (requisições HTTP) • React Hooks (useState, useEffect)

▶️ Como rodar o projeto localmente

  1. Clone o repositório

git clone https://github.com/thiago1187/ScoutMatch.git cd ScoutMatch

  1. Abra o projeto na sua IDE

(IntelliJ, VS Code, etc.)

  1. Execute a aplicação backend • Via terminal:

./mvnw spring-boot:run

•	Ou rode a classe ScoutMatchApplication.java na sua IDE

A aplicação estará disponível em: 👉 http://localhost:8080

  1. Execute o frontend

cd frontend npm install npm run dev

O frontend estará disponível em: 👉 http://localhost:5173

📫 Endpoints da API

🔹 Criar Jogador

POST /jogadores

{ "nome": "Thiago Silva", "posicao": "Zagueiro", "pernaBoa": "Direita", "melhorSkill": "Cabeceio", "estiloDeJogo": "Defensivo", "idade": 39 }

🔹 Criar Time

POST /times

{ "nome": "FC Recife", "posicaoDesejada": "Zagueiro", "pernaDesejada": "Direita", "skillDesejada": "Cabeceio", "estiloProcurado": "Defensivo", "minIdade": 30, "maxIdade": 40 }

🔹 Ver Matches de um Time

GET /times/{id}/matches

Exemplo de retorno:

[ { "nome": "Thiago Silva", "compatibilidade": 5, "resumo": "Muito compatível: posição, perna, skill, estilo, idade combinam com o time" }, { "nome": "Outro Jogador", "compatibilidade": 3, "resumo": "Compatível: posição, estilo, idade combinam com o time" } ]

🧠 Lógica de Match

A compatibilidade é calculada com base em até 5 critérios: • ✅ Posição • ✅ Perna boa • ✅ Melhor skill • ✅ Estilo de jogo • ✅ Faixa etária (mínima e máxima)

Cada critério compatível soma 1 ponto. O sistema retorna os jogadores ordenados pela pontuação de compatibilidade, com um resumo explicativo.

👨‍💻 Autor

Desenvolvido por Thiago Macena

About

API para times de futebol encontrarem jogadores similares com o perfil que eles procuram

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages