- Un repositorio que gestiona en archivos Markdown más de 8,600 leyes recopiladas desde 1960 mediante la API pública del BOE del gobierno de España
- Cada ley se almacena junto con metadatos en YAML, y todo el historial de reformas se rastrea con commits de Git
- Incluye todo el conjunto de legislación consolidada de ámbito nacional, como la Constitución, leyes orgánicas, leyes ordinarias y decretos-ley, y cada commit registra enlaces a la fuente oficial
- Los textos legales se ofrecen en dominio público, y el repositorio agrega funciones de estructuración, control de versiones y comparación
- Se prevé que el proyecto se integre con la API de Legalize.dev para ofrecer funciones ampliadas como búsqueda de leyes, comparación de versiones y alertas de cambios
Resumen general
- Un proyecto que gestiona toda la legislación española en forma de repositorio Git, donde cada ley está compuesta por un archivo Markdown y todo el historial de reformas queda registrado en commits
- Incluye más de 8,600 leyes desde 1960, y los datos se obtienen de la API pública del BOE (Boletín Oficial del Estado) del gobierno de España
- Este repositorio forma parte del proyecto Legalize, y permite gestionar versiones, comparar y rastrear leyes
- Los textos legales se ofrecen en dominio público, y el repositorio proporciona funciones de estructuración, metadatos y control de versiones
Estructura de archivos
- Todas las leyes se guardan como archivos Markdown dentro del directorio
spain/
- Ej.:
BOE-A-1978-31229.md es la Constitución Española, BOE-A-1995-25444.md es el Código Penal, BOE-A-2015-11430.md es el Estatuto de los Trabajadores y BOE-A-2000-323.md es la Ley de Enjuiciamiento Civil
- Cada archivo comienza con metadatos frontmatter en formato YAML
- Incluye campos como
titulo, identificador, pais, rango, fecha_publicacion, ultima_actualizacion, estado y fuente
- En el ejemplo se especifican la fecha de publicación de la Constitución (
Constitución Española), la fecha de actualización más reciente, el estado (vigente) y la URL de la fuente oficial
Alcance de la legislación incluida
- Incluye toda la legislación consolidada clasificada por el BOE a nivel nacional
- Constitución, leyes orgánicas (
Leyes Orgánicas), leyes ordinarias (Leyes ordinarias), decretos-ley (Decretos-ley) y reales decretos legislativos (Reales Decretos Legislativos)
- Cada reforma se guarda como un commit independiente, y la fecha de autoría del commit refleja la fecha oficial de publicación
- Los mensajes de commit incluyen el identificador de la reforma y el enlace a la fuente oficial
Ejemplos de uso
- Después de clonar el repositorio, es posible buscar artículos concretos de una ley o revisar el historial de cambios
- Ej.: buscar el artículo 135 de la Constitución con el comando
grep
- Revisar el historial de cambios de ese artículo con
git log
- Comparar con
git diff los cambios concretos de la reforma de estabilidad presupuestaria de 2011
Fuente de datos y licencia
- Todos los datos se obtienen de la API de legislación consolidada del BOE
- Los textos legales están en dominio público, y el repositorio solo agrega estructuración y control de versiones
- La estructura del repositorio, los metadatos y las herramientas se distribuyen bajo licencia MIT
API y planes de expansión
- La API de Legalize estará disponible próximamente en legalize.dev
- Está previsto que ofrezca búsqueda de leyes, filtrado, comparación de versiones y alertas de cambios
Cómo contribuir
- Si hay errores en los textos consolidados o faltan reformas, se puede abrir un issue con el nombre de la ley, el artículo y la fuente oficial para proponer una corrección
Creador
- El proyecto fue creado por Enrique Lopez
- Forma parte del proyecto Legalize y está vinculado con legalize.dev
1 comentarios
Comentarios en Hacker News
En Francia, las leyes no solo se versionan, sino que incluso se demuestran formalmente
Con el lenguaje Catala se trata la ley como si fuera código
Edición: también hay bastante gente del equipo francés aquí. Al menos cinco personas están hablando de control de versiones citando Légifrance
Al implementar lógica de cálculo de impuestos o prestaciones, permite verificar mucho mejor que con lenguajes generales si coincide con la ley real
Yo construí un pipeline para convertir todo el cuerpo de la legislación nacional española en un repositorio Markdown con control de versiones
Cada ley es un archivo, y cada modificación queda registrada como un commit de git con la fecha real. Hay 8,642 leyes y 27,866 commits en total
Al final, la legislación es una ‘secuencia de parches’, así que creo que git ya era la solución. En vez de frases como “elimínese el apartado 3...”, puedes ver los cambios reales como diff
La fuente fue la API de legislación consolidada del BOE, y lo armé en unas 4 horas con Claude Code
Ahora estoy explorando si esto podría evolucionar hacia una API jurídica o una plataforma de datos abiertos
También se podría analizar qué leyes se citan más y qué expresiones han requerido interpretación repetidamente
Tener una API oficial como en España sería muchísimo más eficiente, pero en Alemania hasta entidades privadas reclaman copyright
En el Reino Unido, por ejemplo, legislation.gov.uk permite seguir todo el historial de modificaciones
Los grandes bufetes ya tienen sus propias bases de datos, así que como servicio de pago el mercado es limitado
Ver enlace del código tributario del IRS
Este tipo de proyecto es una excelente dirección para aumentar la transparencia de los datos legales
Puede servir como base para conectar a la IA con la comprensión y explicación del derecho
Ojalá surjan intentos parecidos en otros países
Sería todavía más interesante si el autor de cada commit fuera el político realmente responsable de la reforma
Sería como poder ver con
git blamequién hizo exactamente esa leyTener lagunas legales como casos de prueba y correr pruebas de regresión cada vez que cambie la ley para verificar que no haya problemas
Me parece una gran idea. Ojalá un sistema así se aplicara a las leyes de todos los países
Igual que hay lobby para mantener complicada la declaración de impuestos, la industria legal también podría intentar bloquear la transparencia y la eficiencia
Ver este artículo
El estado de Maryland ya lo implementó en regs.maryland.gov,
y también está abierto el repositorio en GitHub
Ayudamos a comunidades locales a publicar su legislación oficial en GitHub
Yo también estoy implementando algo parecido para proyectos de ley del estado de California
Creo que este enfoque debería volverse la forma estándar. Siempre me he preguntado por qué el original auténtico de estos documentos no está en un repositorio git
En una interpretación más generosa, quizá simplemente casi nadie en el ámbito jurídico entiende o sabe implementar esta tecnología
Excelente proyecto. La mayor parte de las leyes de la época de Franco fue derogada en 1978, pero aun así incluye leyes anteriores al siglo XIX
Eso sí, la fuente empieza desde 1960 en un solo commit, así que no existe historial de cambios anterior a esa fecha
El BOE incluso tiene documentos escaneados hasta el siglo XVII, así que su nivel de preservación documental es impresionante
La limitación de Git es que “git blame” no funciona
Estaría bien saber quién votó a favor o en contra, pero git no tiene una estructura de commits colaborativos
De todos modos, ya es un logro enorme haber metido toda la legislación de un país en git
Ese enfoque viene del desarrollo del kernel de Linux
Soy el autor (OP). No esperaba una reacción tan grande
Como hubo muchas solicitudes, publiqué el código → GitHub: legalize-dev
El pipeline está diseñado con una estructura multi-país. Francia (con datos de Légifrance) ya funciona,
y para agregar un nuevo país solo hay que implementar 4 interfaces en Python
También escribí una guía de contribución
Ya hubo gente de Alemania, Portugal, Suecia, Finlandia, Países Bajos y Brasil que expresó interés en participar
Si conoces fuentes públicas de datos legales de tu país, sería genial que ayudaras con un PR
A medida que esto crezca hará falta infraestructura, así que están preparando financiamiento en Open Collective
También hay un sitio donde se pueden ver leyes y diffs en tiempo real
Todavía es inestable, pero la visión es grande
¡Felicidades! Es un proyecto muy bueno
Antes hubo un intento parecido llamado gitlaw, y en Brasil existe el estándar LexML para representar técnicamente los cambios en la legislación
Es bastante complejo, pero un enfoque interesante