Código para a aplicação do Torneio de Futsal de Porto de Mós que decorre em 2026
- Backend: FastAPI + Python com
uvcomo gerenciador de pacotes- Dependências: FastAPI, Uvicorn, Pymongo, Pydantic
- Banco de dados: MongoDB
- Frontend: Vue 3 + PrimeVue + TailwindCSS com
pnpmcomo gerenciador de pacotes
Para executar o MongoDB localmente usando Docker:
docker run -d \
--name mongodb \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=123 \
mongo:latestOu usando docker-compose (criar um arquivo docker-compose.yml):
version: '3.8'
services:
mongodb:
image: mongo:latest
container_name: mongodb
restart: always
ports:
- "27017:27017"
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: 123
volumes:
- mongodb_data:/data/db
volumes:
mongodb_data:Executar com:
docker-compose up -d- Python 3.14+
- Node.js 20.19+ ou 22.12+
- uv (para backend)
- pnpm (para frontend)
-
Navegar até a pasta do backend:
cd backend -
Instalar as dependências com uv:
uv sync
-
Configurar o arquivo
.envna pastabackend/com a variável:db_connection_string=mongodb://utilizador:senha@host:porta/seu_banco?authSource=adminExemplo
.env:db_connection_string=mongodb://root:123@localhost:27017/tournament?authSource=admin http_host=0.0.0.0
-
Executar o servidor:
uv run uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
A API estará disponível em
http://localhost:8000
-
Navegar até a pasta do frontend:
cd frontend -
Instalar as dependências com pnpm:
pnpm install
-
Executar o servidor de desenvolvimento:
pnpm dev
A aplicação estará disponível em
http://localhost:5173
cd backend
uv buildcd frontend
pnpm buildOs arquivos finais estarão na pasta dist/ do frontend