Plataforma de bolão para palpites de partidas de futebol. Os usuários fazem palpites nos placares das partidas, e o sistema calcula automaticamente os pontos e rankings quando as partidas são finalizadas.
🚀 Projeto Open Source - Contribuições são bem-vindas!
Participe da nossa comunidade no WhatsApp para tirar dúvidas, trocar ideias e acompanhar as novidades do projeto:
👉 Entrar no Grupo da Comunidade
Arena de Elite é uma aplicação full-stack que permite aos usuários:
- 🎯 Fazer palpites em partidas de futebol
- 💰 Pagar via PIX (integração com Mercado Pago)
- 🏅 Competir no ranking de pontuação
- 📊 Acompanhar estatísticas e resultados
Este é um monorepo gerenciado com Turborepo e pnpm workspaces.
arena-de-elite/
├── apps/
│ ├── api/ # API REST Spring Boot (Java 21)
│ └── web/ # Frontend Next.js (React 19)
├── turbo.json # Configuração Turborepo
└── pnpm-workspace.yaml
| Camada | Tecnologia |
|---|---|
| Frontend | Next.js 15, React 19, TypeScript, TailwindCSS, shadcn/ui |
| Backend | Spring Boot 3.4, Java 21, Spring Data JPA |
| Banco de Dados | PostgreSQL 16 |
| Migrations | Flyway |
| Pagamento | Mercado Pago PIX |
| API Externa | API-Football |
- Node.js 20+
- pnpm 9+
- Java 21
- Maven 3.9+
- PostgreSQL 16
- Docker (opcional)
git clone https://github.com/seu-usuario/arena-de-elite.git
cd arena-de-elitecp apps/api/.env.example apps/api/.env
cp apps/web/.env.example apps/web/.env.localAPI (apps/api/.env):
| Variável | Descrição |
|---|---|
DB_URL |
String de conexão PostgreSQL |
DB_USERNAME |
Usuário do banco |
DB_PASSWORD |
Senha do banco |
API_FOOTBALL_KEY |
Chave de acesso API-Football |
MERCADO_PAGO_ACCESS_TOKEN |
Credenciais Mercado Pago |
Web (apps/web/.env.local):
| Variável | Descrição |
|---|---|
NEXT_PUBLIC_API_URL |
URL da API backend |
# Usando Docker
docker run -d \
--name arena-db \
-e POSTGRES_USER=arena \
-e POSTGRES_PASSWORD=arena123 \
-e POSTGRES_DB=arena \
-p 5432:5432 \
postgres:16Backend (API):
cd apps/api
mvn spring-boot:runA API estará disponível em http://localhost:3001.
Frontend (Web):
pnpm install
pnpm devA aplicação web estará disponível em http://localhost:3000.
| Método | Endpoint | Descrição |
|---|---|---|
| GET | /api/v1/rounds |
Listar todas as rodadas |
| GET | /api/v1/rounds/:id |
Obter detalhes da rodada |
| POST | /api/v1/rounds/sync |
Sincronizar rodadas da API-Football |
| POST | /api/v1/bets |
Submeter novo palpite |
| GET | /api/v1/bets/:ticketCode |
Buscar palpite por bilhete |
| POST | /api/v1/payments |
Gerar pagamento PIX |
| POST | /api/v1/payments/webhook |
Webhook de pagamento |
Adoramos contribuições da comunidade! Veja como você pode ajudar:
- 🍴 Faça um fork do projeto
- 🔧 Crie uma branch para sua feature (
git checkout -b feature/nova-feature) - 💾 Commit suas mudanças (
git commit -m 'feat: adiciona nova feature') - 📤 Push para a branch (
git push origin feature/nova-feature) - 🔃 Abra um Pull Request
Por favor, leia nosso Guia de Contribuição para mais detalhes.
- 🐛 Correção de bugs
- ✨ Novas features
- 📝 Melhorias na documentação
- 🎨 Melhorias de UI/UX
- 🧪 Testes automatizados
- 🌍 Tradução para outros idiomas
Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.
Tem alguma dúvida ou sugestão?
Feito com ❤️ pela comunidade Arena de Elite
