- Repositório que gerencia mais de 8.600 leis desde 1960 em arquivos Markdown, coletadas por meio da API pública do BOE do governo espanhol
- Cada lei é armazenada com metadados em YAML, e todo o histórico de revisões é rastreado por commits do Git
- Inclui todo o conjunto consolidado de leis em nível nacional, como Constituição, leis orgânicas, leis ordinárias e decretos-leis reais, e cada commit registra o link da fonte oficial
- Os textos legais são fornecidos em domínio público, e o repositório adiciona estruturação, controle de versão e recursos de comparação
- O projeto deve se integrar à API Legalize.dev para oferecer recursos expandidos, como busca em leis, comparação de versões e alertas de alterações
Visão geral
- Projeto que gerencia toda a legislação espanhola no formato de um repositório Git, com cada lei estruturada em um arquivo Markdown e todo o histórico de revisões registrado em commits
- Inclui mais de 8.600 leis desde 1960, com dados obtidos da API pública do BOE (Boletín Oficial del Estado) do governo espanhol
- Este repositório faz parte do projeto Legalize, permitindo controle de versão, comparação e rastreamento de leis
- Os textos legais são oferecidos em domínio público, e o repositório fornece estruturação, metadados e controle de versão
Estrutura de arquivos
- Todas as leis são armazenadas como arquivos Markdown no diretório
spain/
- Ex.:
BOE-A-1978-31229.md é a Constituição Espanhola, BOE-A-1995-25444.md é o Código Penal, BOE-A-2015-11430.md é o Estatuto dos Trabalhadores, BOE-A-2000-323.md é a Lei de Processo Civil
- Cada arquivo começa com metadados frontmatter em formato YAML
- Inclui campos como
titulo, identificador, pais, rango, fecha_publicacion, ultima_actualizacion, estado, fuente
- No exemplo, são informados a data de publicação, a data da atualização mais recente, o estado (
vigente) e a URL da fonte oficial da Constituição (Constitución Española)
Escopo das leis incluídas
- Inclui todas as leis consolidadas classificadas em nível nacional no BOE
- Constituição, leis orgânicas (Leyes Orgánicas), leis ordinárias (Leyes ordinarias), decretos-leis (Decretos-ley) e decretos legislativos reais (Reales Decretos Legislativos)
- Cada revisão é armazenada como um commit independente, e a data do commit reflete a data oficial de publicação
- As mensagens de commit incluem o identificador da revisão e o link da fonte oficial
Exemplos de uso
- Após clonar o repositório, é possível buscar artigos específicos de uma lei ou verificar o histórico de alterações
- Ex.: usar o comando
grep para localizar o artigo 135 da Constituição
- Usar
git log para verificar o histórico de mudanças desse artigo
- Usar
git diff para comparar as alterações específicas da reforma de estabilidade fiscal de 2011
Fonte dos dados e licença
- Todos os dados são obtidos da API de legislação consolidada do BOE
- Os textos legais estão em domínio público, e o repositório apenas adiciona estruturação e controle de versão
- A estrutura do repositório, os metadados e as ferramentas são distribuídos sob a licença MIT
API e planos de expansão
- A API Legalize deve ser disponibilizada em breve em legalize.dev
- Deve oferecer suporte a busca em leis, filtragem, comparação de versões e alertas de alterações
Como contribuir
- Em caso de erros no texto consolidado ou revisões ausentes, é possível abrir uma issue com o nome da lei, o artigo e a fonte oficial para sugerir correções
Criador
- O projeto foi criado por Enrique Lopez
- Faz parte do projeto Legalize e está integrado ao legalize.dev
1 comentários
Comentários do Hacker News
Na França, as leis não são apenas versionadas, mas também formalmente provadas
A linguagem Catala trata a lei como código
edit: o pessoal francês também está bem presente aqui. Pelo menos cinco pessoas estão citando o Légifrance e falando sobre controle de versão
Ao implementar lógica de cálculo de impostos ou benefícios, ela permite verificar com muito mais precisão do que linguagens de propósito geral se isso corresponde de fato à lei
Eu criei um pipeline que converte toda a legislação nacional da Espanha em um repositório Markdown versionado
Cada lei é um arquivo, e cada emenda é registrada como um commit git com a data real. São 8.642 leis e 27.866 commits ao todo
No fim das contas, leis são uma ‘sequência de patches’, então acho que o git já é a solução. Em vez de frases como “remover o parágrafo 3...”, dá para ver as mudanças reais em um diff
A fonte foi a API de legislação consolidada do diário oficial espanhol (BOE), e tudo foi construído em cerca de 4 horas com Claude Code
Estou explorando se isso pode evoluir para uma API jurídica ou plataforma de dados abertos baseada nesses dados
Também daria para analisar quais leis são citadas com mais frequência e quais expressões exigiram interpretação repetidamente
Se houvesse uma API oficial como na Espanha, seria muito mais eficiente, mas na Alemanha até entidades privadas reivindicam direitos autorais
No Reino Unido, por exemplo, legislation.gov.uk permite rastrear todo o histórico de emendas
Grandes escritórios já têm suas próprias bases de dados, então como serviço pago isso teria pouco mercado
Veja o link do código tributário do IRS
Esse tipo de projeto é um excelente caminho para aumentar a transparência dos dados jurídicos
Pode servir de base para conectar IA à compreensão e explicação da lei
Seria ótimo ver tentativas semelhantes em outros países
Seria ainda mais interessante se o autor dos commits fosse o político realmente responsável pela emenda
Seria como poder usar
git blamee descobrir imediatamente quem criou aquela leiColocar brechas como casos de teste e, sempre que a lei mudasse, rodar testes de regressão para verificar se está tudo certo
Acho uma ideia muito boa. Seria ótimo se um sistema assim fosse aplicado às leis de todos os países
Assim como há lobby para manter a declaração de impostos complicada, o setor de advocacia também pode tentar bloquear transparência e eficiência
Veja este artigo relacionado
O estado de Maryland já adotou isso em regs.maryland.gov,
e o repositório no GitHub também está aberto
Estamos ajudando comunidades locais a publicar legislação oficial no GitHub
Eu também estou implementando algo parecido para projetos de lei do estado da Califórnia
Acho que essa abordagem deveria virar o modo padrão. Sempre me perguntei por que a versão autêntica desses documentos não está em um repositório git
Numa leitura mais generosa, talvez seja só porque quase ninguém da área jurídica entende ou sabe implementar esse tipo de tecnologia
Excelente projeto. A maior parte das leis da era Franco foi revogada em 1978, mas ainda há leis anteriores ao século XIX incluídas
Só que a fonte começa em 1960 com um único commit, então não há histórico de alterações anterior a isso
O BOE chega ao ponto de ter documentos digitalizados desde os anos 1600, então o nível de preservação documental é impressionante
A limitação do Git é que o “git blame” não funciona muito bem
Seria bom saber quem votou a favor ou contra, mas o git não tem uma estrutura de commits colaborativos
De qualquer forma, já é uma conquista enorme colocar toda a legislação de um país no git
Essa prática veio do desenvolvimento do kernel Linux
Sou o autor do post (OP). Não esperava uma reação tão grande
Como houve muitos pedidos, publiquei o código → GitHub: legalize-dev
O pipeline foi projetado com uma estrutura de suporte multinacional. A França (dados do Légifrance) já está funcionando,
e para adicionar um novo país basta implementar 4 interfaces em Python
Também escrevi um guia de contribuição
Recebi interesse de pessoas da Alemanha, Portugal, Suécia, Finlândia, Países Baixos, Brasil e outros
Se você conhece fontes públicas de dados jurídicos do seu país, seria ótimo ajudar com um PR
Conforme a escala cresce, a infraestrutura se torna necessária, então estou preparando financiamento via Open Collective
Também existe um site onde dá para ver leis e diffs em tempo real
Ainda está instável, mas estou pensando grande
Parabéns! Projeto muito legal
Já houve uma tentativa parecida antes com o gitlaw, e no Brasil existe o padrão LexML, que representa tecnicamente as mudanças na legislação
É uma abordagem bem complexa, mas interessante