
Estudo de caso Personal project
A ficha pública de qualquer candidato brasileiro, com a fonte oficial por trás de cada número.
- Cliente
- Personal project
- Tipo
- Ferramenta de dados cívicos
- Papel
- Fork, redesign e funcionalidades de front-end
- Ano
- 2026
01Visão geral
Uma aplicação web somente leitura sobre um banco SQLite de 12 GB montado a partir de fontes oficiais (Tribunal Superior Eleitoral, Receita Federal e Portal da Transparência): candidaturas de 2014 a 2026, doações e despesas de campanha, bens declarados e sinais de alerta, organizados por pessoa, com o arquivo, a URL, a data de coleta e o SHA-256 de cada registro a um clique. É um fork do EloSys, um projeto de código aberto; a minha parte foi a nova identidade, o front-end e as funcionalidades em volta dele.
02O problema
Os dados eleitorais brasileiros são públicos, mas estão espalhados em arquivos ZIP anuais de mais de um gigabyte cada, com layouts diferentes. Montar o histórico de um candidato significa baixar, cruzar registros por CPF e CNPJ e depois confiar num número sem conseguir dizer de onde ele veio.
02A abordagem
Manter o pipeline de dados e refazer o que o leitor toca. Os coletores do EloSys gravam cada registro com uma cadeia de proveniência até o arquivo original e o seu hash, e a aplicação web abre o banco em modo somente leitura. Renomeei o projeto, troquei o painel escuro por uma cara cívica e sóbria, e acrescentei as ferramentas que as pessoas procuram quando pesquisam alguém: favoritos, comparação lado a lado, exportação, compartilhamento e impressão.
03A construção
O que foi de fato construído
- 01
Um novo sistema visual aplicado a todas as páginas: tema claro por padrão e um escuro, Public Sans e IBM Plex Mono, logo de lupa com visto, barra lateral e barra superior redesenhadas, e um layout de celular com menu lateral que respeita a preferência de reduzir movimento.
- 02
Favoritos em qualquer ficha (candidato, CPF ou CNPJ) fixados na barra lateral, e buscas recentes com navegação por teclado na paleta de busca Ctrl K que já existia, tudo guardado no navegador, sem conta.
- 03
Uma página para comparar até três candidatos: candidaturas, doações, fundo eleitoral, despesas contratadas e pagas, bens declarados e sinais de alerta, com barras proporcionais e link compartilhável. Além disso, exportação CSV em todas as tabelas, cópia de CPF e CNPJ com um clique, compartilhamento de link e layout de impressão.
- 04
Um cache em memória para as agregações mais pesadas, o ranking de bens declarados e os maiores fornecedores de todos os anos, que levavam até cerca de um minuto na base completa, com um script de pré-carga e um modo de execução em rede local para que outras pessoas usem a cópia de uma só máquina.
Tecnologia
- Next.js
- React
- TypeScript
- Tailwind CSS
- SQLite
- better-sqlite3
- React Flow
- Python
04A experiência





05Onde está hoje
Roda localmente sobre o banco disponível para download (cerca de 12 GB depois de extraído); não está publicado na internet. Os coletores, as regras de detecção e o modelo de proveniência vêm do EloSys. Sinais de alerta são indícios, não provas.
