factcircuit
FactCircuit는 불변 출처와 단계별 검증, 제한된 검색, 재현 가능한 평가를 제공하는 감사 가능한 주장·증거 검증 루프입니다
의회 의원·상원의 비용·업무·비정상 지출을 공식 데이터로 제공
Quanto custa, se trabalha e se há gastos incomuns: deputados(as) e senadores(as) em dados públicos oficiais da Câmara e do Senado, com fonte e data. Projeto pessoal e apartidário.
데이터Python · JavaScriptGitHub @igoooooooooor온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Site para entender, em linguagem simples, gastos, presença e votações de deputados(as) e senadores(as), sempre com link para a fonte oficial.README 전문 보기 ↗
Site para entender, em linguagem simples, gastos, presença e votações de deputados(as) e senadores(as), sempre com link para a fonte oficial.
/metodologia e /sobre.Cada página (fichas, votações do Placar, seções) chega com o conteúdo essencial no HTML, com título, canonical e dados estruturados: funciona sem JavaScript e pode ser lida por buscadores e assistentes (Arquitetura).
A área Minha cidade reúne a base nacional do IBGE, os resultados eleitorais do TSE, as emendas municipais do Portal da Transparência e as contas anuais do SICONFI, com busca por nome, fontes, períodos e indicação de dados ausentes.
É um projeto pessoal, independente e apartidário, sem vínculo com partidos, políticos ou órgãos públicos. Ele apenas reúne e organiza informações que os próprios órgãos já publicam. Veja o Aviso legal.
Requer Python 3.10+. Para os testes de frontend, Node.js 18+. A aplicação, o build e os testes não precisam de pacotes Python externos. A coleta opcional de presença do Senado em PDFs requer pdfplumber; veja a instalação em Dados e SQLite.
make dev
Abra localhost:8000. make dev gera dist/index.html e dist/assets/ e inicia a API local. Não faz downloads nem reimporta o banco. Depois de editar o frontend, rode make build e recarregue a página; alterações Python exigem reiniciar o servidor.
A base já existente em data/na-lupa.sqlite3 é preservada. Este repositório publica somente código, testes e documentação: banco, snapshots complementares, downloads e credenciais são locais.
Em um clone novo, make fetch-data baixa o release de dados mais recente (banco, snapshots e revisões do Placar, com conferência de SHA-256), instala em data/ e monta a página; depois, make dev. Sem rede, make check, make build e make dev funcionam com make db-init (banco vazio) e sem snapshots. O build não baixa dados. No servidor, a cota do ano corrente é atualizada todo dia e o release de dados sai todo mês por timers do systemd. Para assumir o projeto do zero, siga Continuidade.
Sem Make:
python3 scripts/build.py
python3 -m backend.server --port 8000
| Comando | Uso |
|---|---|
make dev PORT=8001 | Rodar em outra porta |
make build | Gerar HTML em dist/ |
make check | Build, sintaxe e testes locais |
make fetch-data | Baixar o release de dados mais recente, instalar em data/ e montar a página; TAG=data-AAAA-MM-DD escolhe outro, FORCE=1 substitui o banco |
make db-init | Criar/atualizar esquema sem apagar dados |
make db-check | Conferir integridade e cobertura numérica |
make audit-numbers | Conferir consistência de proporções, cobertura, custos, presença e placares na base local, sem alterar dados |
make db-backup | Backup SQLite consistente e datado |
make import | Importar arquivos locais de data/imports/ |
make collect-legislative YEAR=2026 | Baixar dados da Câmara e do Senado |
make collect-profiles | Coletar os complementos das fichas (projetos pelos arquivos anuais da Câmara); depois rode make build |
make collect-senate YEAR=2026 | Coletar presença registrada de 2026 e votos/autoria do mandato; depois rode make build |
make collect-senate-mandate | Coletar votos nominais e autoria desde fev/2023, sem baixar PDFs de presença |
make collect-project-status | Consultar a situação dos projetos já listados, com fontes e datas; atualização e modo offline em Dados e SQLite |
make collect-vote-inventory YEAR=2026 | Levantar votações do Plenário para o Placar; relatório local e metodologia em Piloto do Placar |
make collect-votes THROUGH=2026-10-09 |
backend/ API Python, consultas e esquema SQLite
frontend/ template HTML, scripts e design system
scripts/ montagem do app
ingest/ coletores oficiais; editorial/ contém complementos manuais da Câmara
data/ snapshots, banco e downloads locais, fora do Git
reviews/ revisões editoriais do Placar, versionadas
tests/ testes Python e Node
docs/ arquitetura, dados, visual e próximas etapas
dist/ app gerado, ignorado no Git
O servidor usa 127.0.0.1 por padrão e serve somente o app e a API. O código está em igoooooooooor/painelpublico; publicar código no GitHub não publica o site nem a base. A instalação do servidor e do túnel está descrita em Publicação. .env.example e os arquivos *.example.* contêm apenas modelos de configuração.
Código sob a licença MIT. Os releases de dados estão sob CC BY 4.0; as informações pertencem às fontes públicas indicadas em Dados e SQLite. Veja também o Aviso legal.
| Gerar o catálogo paginado a partir das revisões locais, com votos individuais separados; coleta e cobertura |
make collect-accounts YEAR=2025 | Coletar contas anuais municipais do SICONFI, com cache e reconstrução offline |
make collect-amendments YEAR=2026 | Coletar emendas por município e ano da proposta; valores empenhados e pagos separados |
make collect-cities | Coletar a base nacional de Minha cidade (IBGE e TSE); reconstrução offline em Dados e SQLite |
make collect-elections | Ligar a lista atual às candidaturas de 2026 no TSE; depois rode make build |
make collect-mandate-cost | Coletar folha e moradia da Câmara nos meses já encerrados do ano, para o custo do mandato |
make collect-mandate-history | Coletar os anos fechados do mandato na Câmara e recompor a média (faça make db-backup antes) |
make update-daily | Atualização diária da cota: coleta, importa em cópia, verifica e publica; no servidor roda por timer (Publicação) |
make update-weekly | Inventário do Plenário e fila editorial do Placar; no servidor roda por timer |
make update-monthly | Custo do mandato, histórico da cota, Senado e página; no servidor roda por timer |
make pipeline-status | Último resultado das atualizações automáticas |
make prod | Rodar como em produção (cache, só localhost) |
make deploy / make deploy-data | Publicar código / banco e snapshots no servidor; push na main já publica o código (Publicação) |
make publish-data | Publicar banco, snapshots e revisões do Placar como release de dados no GitHub; DRY_RUN=1 só monta o pacote; no servidor sai todo mês (Dados e SQLite) |
make deploy-status | Ver se o site está no ar |