Dev 1 | Ambiente Zero — Esta é a base que todos os outros devs clonam para iniciar seu trabalho.
O projeto roda 100% dentro do Docker. Você não precisa instalar Python, pip ou qualquer dependência manualmente.
# Via winget (já vem no Windows 10/11):
winget install -e --id Docker.DockerDesktopApós a instalação:
⚠️ Reinicie o computador (obrigatório — ativa o WSL 2)- Abra o Docker Desktop pelo menu Iniciar e aguarde o ícone na bandeja ficar verde (Running)
brew install --cask dockerAbra o aplicativo Docker.app e aguarde o menu de status ficar verde.
docker --version
docker compose version# Crie seu arquivo de variáveis de ambiente (só na primeira vez)
cp .env.example .envEdite o
.envse precisar alterar o tamanho máximo de upload ou o nível de log.
ruff check .
mypy .-
Testes Unitários e Política de Commit: Este repositório faz uso obrigatório de TDD e conta com testes na raiz, executados isoladamente no container Docker com barreiras de cobertura.
- A sua suite deve sempre ser executada via
docker compose run --rm app pytest --cov=src --cov=core --cov-fail-under=80 tests/. - A política de
.pre-commit-config.yamlproíbe terminantemente a emissão de commits que falhem em testes ou abaixem a cobertura de código para menos de 80%. - Use
pre-commit installpara vincular esta trava em sua máquina.
- A sua suite deve sempre ser executada via
-
Iniciar a Interface (Streamlit):
docker compose up --build--buildreconstrói a imagem se houver mudanças noDockerfileoupyproject.toml.- A aplicação estará disponível em: http://localhost:8501
Para parar:
docker compose down# Iniciar
docker compose up
# Parar
docker compose down
# Ver logs em tempo real
docker compose logs -f app
# Reconstruir após mudar pyproject.toml ou Dockerfile
docker compose up --buildO código-fonte é montado como volume, então alterações nos arquivos
.pysão refletidas automaticamente — sem precisar rebuildar.
docker compose exec app python -m pytest tests/ -v# Instalar uv
pip install uv
# Criar venv e instalar dependências
uv venv .venv
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
uv pip install -e ".[dev]"
# Instalar hooks de pre-commit
pre-commit install| Variável | Padrão | Descrição |
|---|---|---|
APP_ENV |
development |
development ou production |
MAX_ZIP_SIZE_MB |
50 |
Limite de upload do ZIP (MB) |
TEMP_DIR |
/tmp/depcheck |
Dir. de extração temporária |
LOG_LEVEL |
INFO |
DEBUG / INFO / WARNING / ERROR |
# Instalar os hooks (só uma vez, após clonar)
docker compose exec app pre-commit install
# Rodar manualmente em todos os arquivos
docker compose exec app pre-commit run --all-filesFerramentas configuradas: Ruff (lint + format) · Mypy (tipos) · verificações de YAML/TOML