GovHub-br/data-application-gov-hub
GovHub-br/data-application-gov-hub has 26 GitHub stars and 38 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-15 08:38 UTC. Last push 2026-11-05.
Measured star growth
- in 24h
- 0
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
About
Pipeline de Dados do Gov-Hub
DataREADME.md
OriginalGov Hub BR - Transformando Dados em Valor para Gestão Pública
O Gov Hub BR é uma iniciativa para enfrentar os desafios da fragmentação, redundância e inconsistências nos sistemas estruturantes do governo federal. O projeto busca transformar dados públicos em ativos estratégicos, promovendo eficiência administrativa, transparência e melhor tomada de decisão. A partir da integração de dados, gestores públicos terão acesso a informações qualificadas para subsidiar decisões mais assertivas, reduzir custos operacionais e otimizar processos internos.
Potencializamos informações de sistemas como TransfereGov, Siape, Siafi, ComprasGov e Siorg para gerar diagnósticos estratégicos, indicadores confiáveis e decisões baseadas em evidências.

- Transparência pública e cultura de dados abertos
- Indicadores confiáveis para acompanhamento e monitoramento
- Decisões baseadas em evidências e diagnósticos estratégicos
- Exploração de inteligência artificial para gerar insights
- Gestão orientada a dados em todos os níveis
Fluxo/Arquitetura de Dados
A arquitetura do Gov Hub BR é baseada na Arquitetura Medallion, em um fluxo de dados que permite a coleta, transformação e visualização de dados.

Para mais informações sobre o projeto, veja o nosso e-book. Também temos alguns slides falando do projeto e como ele pode ajudar a transformar a gestão pública.
Apoio
Esse trabalho é mantido pelo Lab Livre e apoiado pelo IPEA/Dides.
Data Application
Este repositório reúne pipelines, modelos dbt, integrações e configurações locais da aplicação de dados do Gov Hub BR.
Stack do Projeto
- Apache Airflow 2.8.1: orquestração de workflows e DAGs.
- dbt: transformação, testes e documentação dos modelos analíticos.
- PostgreSQL: persistência relacional para dados ingeridos e transformados.
- MinIO: armazenamento de objetos para fluxos que usam landing zone.
- Apache Superset: visualização e exploração de dados.
- Jupyter: análise de dados interativa.
- Docker Compose: containerização e desenvolvimento local.
- uv + Make: gerenciamento de dependências e automação de comandos.
Pré-requisitos
- Docker e Docker Compose
- Make
- Python 3.11
- Git
- uv
- Acesso às credenciais necessárias para os sistemas integrados, quando a DAG depender de APIs, certificados ou secrets externos
Setup
- Clone o repositório:
git clone [email protected]:GovHub-br/data-application-gov-hub.git
cd data-application-gov-hub
- Execute a configuração usando Make:
make setup
Esse comando cria .env a partir de local.env quando necessário, instala as
dependências com uv, atualiza o requirements.txt e configura os hooks de
Git.
- Suba o ambiente local:
make compose
O make compose sobe os serviços com Docker Compose, configura
variáveis/conexões básicas do Airflow com make dev e valida a configuração com
make dev-check.
Serviços Locais
Após subir o ambiente, os principais serviços ficam disponíveis em:
- Airflow: http://localhost:8080
- Superset: http://localhost:8088
- Jupyter: http://localhost:8888
- MinIO API: http://localhost:9000
- MinIO Console: http://localhost:9001
As credenciais e variáveis locais vêm de .env/local.env. Não versione
credenciais reais, tokens, certificados ou secrets de produção.
Desenvolvimento
Qualidade de Código
Este projeto utiliza hooks de Git, lint e testes automatizados para manter a qualidade do código.
Execute a verificação de lint:
make lint
Execute os testes unitários:
make test
Execute os testes de integração:
make test-integration
Estrutura do Projeto
.
├── .github/
│ ├── workflows/
│ ├── actions/
│ ├── CONTRIBUTING.md
│ ├── MERGE_REQUEST_PROTOCOL.md
│ └── PULL_REQUEST_TEMPLATE.md
├── airflow_lappis/
│ ├── airflow.cfg
│ ├── dags/
│ │ ├── dashboards/
│ │ ├── data_ingest/
│ │ ├── dbt/
│ │ │ └── ipea/
│ │ └── homologation/
│ ├── helpers/
│ ├── plugins/
│ └── templates/
├── docker/
│ └── postgres/
├── superset/
├── tests/
│ ├── integration/
│ ├── test_helpers/
│ ├── test_plugins/
│ └── unit/
├── Dockerfile
├── Dockerfile.superset
├── docker-compose.yml
├── local.env
├── Makefile
├── pyproject.toml
├── requirements.txt
├── uv.lock
└── README.md
Comandos do Makefile
make setup: configura.env, dependências,requirements.txte hooksmake install: instala dependências comuvmake requirements: regenera orequirements.txtmake compose: sobe o ambiente local e configura o Airflowmake dev: configura variáveis e conexões locais do Airflowmake dev-check: valida variáveis e conexão padrão do Airflowmake format: formata código com Black e Ruffmake lint: executa verificações de Black, Ruff e Tymake test: executa testes unitáriosmake test-integration: executa testes de integração
Airflow Local
O ambiente local monta os principais diretórios do repositório dentro do container do Airflow:
airflow_lappis/dagsem${AIRFLOW_HOME}/dagsairflow_lappis/pluginsem${AIRFLOW_HOME}/pluginsairflow_lappis/helpersem${AIRFLOW_HOME}/helpersairflow_lappis/dags/dbt/ipea/profiles.ymlem${AIRFLOW_HOME}/.dbt/profiles.yml
O make dev configura variáveis como airflow_orgao,
airflow_variables, dynamic_schedules e a conexão postgres_default para
desenvolvimento local.
Fluxo de Trabalho com Git
Se o repositório exigir commits assinados, configure sua chave GPG ou SSH no GitHub e habilite a assinatura no Git antes de commitar.
Documentação
Contribuição
Antes de contribuir, leia o Guia de Contribuição, o Protocolo de Aprovação de Pull Requests e o template de Pull Request, que definem o fluxo de branches, commits, Pull Requests, revisão de código, testes e lint.
Resumo do fluxo:
- Crie uma branch seguindo o padrão
<tipo>/<descricao-curta>. - Faça commits seguindo Conventional Commits.
- Garanta que testes e lint passam ou justifique quando não se aplicarem.
- Abra um Pull Request usando o template do repositório.
- Use labels
team:*quando a revisão por domínio for necessária.
Contato
Para dúvidas, sugestões ou para contribuir com o projeto, entre em contato conosco: [email protected].