Spanish legislation as a Git repo

github.com

634 points

enriquelop

8 hours ago


196 comments

_ache_ 6 hours ago

In France, not only our law are versioned. It's formally proved too!

https://catala-lang.org/

*Edit*: Woah ! The French crew is here. We are at least 5 quoting a variation of <https://www.legifrance.gouv.fr/> for versioning.

enriquelop 8 hours ago

I built a pipeline that converts all Spanish state legislation into version-controlled Markdown. Each law is a file, each reform is a real git commit with the historical date. 8,642 laws, 27,866 commits.

The idea: legislation is just patches on patches on patches. Git already solves this. Instead of reading "strike paragraph 3 and replace with...", you get an actual diff.

The repo is the product. Browse any law, git log to see its full reform history, git diff to see exactly what changed.

Built the pipeline in ~4 hours with Claude Code. Source is BOE (Spain's official gazette) consolidated legislation API.

Exploring whether there's a business here — structured legislation API for legaltech/compliance, or just a useful open dataset. Curious what HN would build with this data.

  • artirdx 7 hours ago

    Laws intent are often clarified in courts through judgments. If you can overlay the judgements on top of the corresponding law, at correct points in time, I think that will have value. It might, for example, show which laws were referenced the most and which needed to be clarified the most. It might give insights into what legal language constructs stood the test of time and which had to be repeatedly clarified.

    • da_chicken 7 hours ago

      That's true, but it might not be as important here.

      Spain is not a country with a Common Law legal system entirely like the US or the UK. They have a civil law system where prior court judgement does not form a strictly binding precedent. Prior judgements can be important, but case law is not really a thing.

      • tephra 7 hours ago
        3 more

        I wonder how true this is, we have the same system in Sweden, that court judgement are not legally binding precedent for lower courts. But in practice lower courts will follow the rulings made by the high court.

        Is it not the same in Spain at all?

        • philistine 5 hours ago

          It's the same in Spain, which makes OPs proposal kind of useless. The big distinction between a civil and a common law system is the fundamentals. A country's civil code is properly defined, while a common law's system is based on previous cases you have to dig through to find the basics.

        • amszmidt 5 hours ago

          Would be nice if someone did it with Swedens laws too!

    • artirdx 26 minutes ago

      Another thought. Assuming such a dataset (laws+ judgement) could be built, an argument can be made to Parliament to draft new laws that take into account all those judgments and then mark those judgments and old laws in a way that they can no longer be referenced (archived?). This might simplify future cases leading to lower legal costs.

      And who knows maybe a way could be found to create smart contracts (smart oracles? smart judges?) and those could lead to instant judgements.

    • dotancohen 7 hours ago

      Laws are often cascaded as well. Specifically in this case, Spain is subdivided into Comunidades Autonomas - each have their own elected parliament. And inside those are cities with their own local laws.

      So while this project does track laws, is there any facility to determine which laws from which bodies are relevant to a specific activity in a specific location?

      • embedding-shape 7 hours ago
        8 more

        > And inside those are cities with their own local laws.

        No, cities don't have their own laws, but the autonomous communities do have some influence in some laws and regulations (not all), like the amount of income tax you have to pay and so on. But cities within the autonomous communities don't have their own laws.

        • donalhunt 7 hours ago
          7 more

          No by(e)-laws in Spain? Certainly a thing in the UK, Ireland and I believe US and Canada. Is that a common law thing?

          • Mordisquitos 6 hours ago

            Local authorities in Spain do have the authority to enact their own law-ish regulations, which are called 'ordenanzas'. For example, if I remember correctly, motorbikes are allowed to park on the pavement by default in Barcelona unless a sign says otherwise, but it is forbidden in Madrid unless a sign explicitly allows it.

            I think local government in Spain has at least as much authority as it does in the UK, maybe more, but almost certainly less than it does in the US.

          • embedding-shape 7 hours ago
            5 more

            "By-laws" is typically the name of the rules/"laws" inside of a company or organization, I'm not familiar with that word in the context of "nation-wide criminal/civil laws".

            Regardless, cities do not have their own "local laws" in the way your comment made it seem. We have national laws, and minor differences in various autonomous communities, since they have some legislative power to control their own industry, commerce, education and some more stuff.

            • dylan604 3 hours ago

              > inside of a company or organization,

              Corps and cities are very similarly structured. Each are charted at the start, with corps getting governed by boards and c-suite types while cities have mayors and city council types. Both file paperwork to exist within the state. Both are subject to state laws, but are allowed to make up regulations specific to them as long as they are within the state's laws.

              In the end, it's all just paperwork, at least in the US

            • eep_social 4 hours ago

              as an american I might call those “local ordinance” when they come from a smaller rulemaker like a town

            • ninalanyon 5 hours ago
              2 more

              > "By-laws" is typically the name of the rules/"laws" inside of a company

              I suspect that this should be qualified by "in the US"

              • embedding-shape 5 hours ago

                No, I was talking about Spain, I have no idea how it works in the US. I thought mentioning "autonomous communities" was enough context to make it evident, but maybe it wasn't.

      • Mordisquitos 7 hours ago

        I may be wrong, but I think autonomous community legislation is not published in the BOE itself (the Official State Gazette), but rather in each of their corresponding official gazettes (e.g. DOGC for Catalonia, BOCM for Madrid, BOA for Aragon, BOJA for Andalusia, etc.).

      • youknownothing 5 hours ago

        yes: Comunidades Autonomas can only defined laws as "permitted" by the central government under a Estatuto de Autonomia (Autonomy statute? not good with legal jargon), which is effectively a law of its own. So at the central level the law says "in this particularly region, matters of education are dealt with regionally", and then that's when regional laws apply. Same from local laws. In essence, all laws emanate from the central government, but the central government decides to delegate some areas; technically, they could always take it back.

    • pseingatl 7 hours ago

      Rarely in a civil law jurisdiction, essential in common-law jurisdictions.

    • SOLAR_FIELDS 6 hours ago

      Perhaps reference it in the commit trailer?

  • mattogodoy 17 minutes ago

    I’ve thought of this of many times! But you’re missing the most important part: every reform should be a PR. With discussions and all. That would be the purest form of voting. And all decisions to reach the current state of a law would ve registered and available for everyone to read. Democracy 2.0.

    Dreaming costs nothing.

  • manunamz an hour ago

    Very cool project. How are you thinking about indexing and discoverability? Git gives you the change history, but navigating the corpus itself seems like the harder problem: Finding related laws, understanding hierarchical relationships between statutes...

    Have you considered embedding semantic hierarchical structure directly in the markdown? Something like https://github.com/wikibonsai/semtree ? It lets you build a navigable tree across markdown files using indented [[wikilinks]] as the organizational spine. Could be a natural fit for legislation that already has an inherent taxonomy (constitutional → organic → ordinary, or by subject area).

  • Bewelge 7 hours ago

    Oooh Can you elaborate a bit how the gazette is publishing them? Like what format did you have to parse. And how many documents were there in total? I tried doing the same for German laws 1-2 years ago but LLMs weren't smart enough yet. And the costs would've been at least a couple of thousand €.

    Ed: Nevermind, I missed the "BOE (Spain's official gazette) consolidated legislation API" part. Sending jealous greetings from Germany. We just have a bunch of PDFs in Germany. And the private entity that has been publishing them for decades even claims copyright on them!

    • sivann 5 hours ago

      Heh we have the exact same status in Greece. It’s sad the upstream is so sloppy.

  • rmonvfer 5 hours ago

    I looked into this a while back and IIRC, the consolidated legislation doesn’t cover all legislation but only a handful.

    Also, in my experience (having built in this space before), regulations aren’t really the issue. Court rulings are, because there’s no open data for them in Spain. And the potential users for a paid product (legal professionals) already know the law; the key players (big law firms) have their own databases of annotated and verified court rulings and other documents.

  • youknownothing 5 hours ago

    This is brilliant. I had thought about this for a long while, you see laws that are just "go to law 132 and amend paragraph 4, then go to law 24 and amend paragraph 9". Basically "laws" are recorded as diffs, and then it's up to the reader to put up the final product in their heads. They should be doing it this way!

  • airstrike 5 hours ago

    This is really cool. I've thought about it for a long time as well but never had the idea of just using git, which is equal parts genius and "obvious" in hindsight, as most great ideas are.

    I think the corollary that comes to mind is that reforms, with their git commits, are incrementally valuable if they refer to other parts of the legislation, previous commits, etc. to give more context as to the intent at the time of the law. So maybe there's a way to distill the legislative process into more PR and commit-oriented work—likely ex post as you did here, but perhaps in the future as part of an actual workflow.

    And then maybe I'd pitch the idea to some technologically-inclined local government.

  • daedric7 6 hours ago

    Please! Can you make the same for Portugal? Laws here are a mess of reforms...

  • aerhardt 3 hours ago

    I’ve had the idea of playing with our laws and trying to ask questions about their growing volume and complexity. This is timely and dope Enrique - mil gracias!

  • __MatrixMan__ 5 hours ago

    It would be a good place to start if you wanted to hard fork the government.

  • Mordisquitos 6 hours ago

    Congratulations, this is a brilliant resource. You have done one of those countless things which I often think about doing, but my utter lack of follow-through and other distractions make it a fantasy. I cannot wait to clone the repo and explore it.

    As to what can be done with the data, maybe one interesting step could be a graph-database regarding laws which reference other laws or the definitions that they depend on?

  • zer00eyz 2 hours ago

    Too bad that author, and committer are individuals and not lists. It would be good to see who wrote them and how the voting went as well.

  • 7777777phil 8 hours ago

    cool idea, how far back (in time) do those 27k commits go?

    Just thinking how this could maybe used for (automated) research / visualization on the evolution of (spanish - in this case) law

    • codethief 8 hours ago

      > how far back (in time) do those 27k commits go

      Looking at the commit dates (which seem to be derived from the original publication dates) the history seems quite sparse/incomplete(?) I mean, there have only been 26 commits since 2000.

      • Meneth 7 hours ago
        3 more

        It seems the commits aren't in proper date order. Here are some newer changes, placed before the latest commits: https://github.com/EnriqueLop/legalize-es/commits/master/?af...

        • forgotpwd16 5 hours ago
          2 more

          It's related to commits actually having a parent-child structure (forming a graph) and timestamps (commit/author) being metadata. So commits 1->2->3->4 could be modified to have timestamps 1->3->2->4. I know GitHub prefers sorting with author over commit date, but don't know how topology is handled.

          • codethief 4 hours ago

            > It's related to commits actually having a parent-child structure (forming a graph) and timestamps (commit/author) being metadata.

            Yeah, I think everyone is aware. It's just that the last couple dozen commits, to me, looked like commits had been created in chronological order, so that topological order == chronological order.

            > I know GitHub prefers sorting with author over commit date, but don't know how topology is handled.

            Commits are usually sorted topologically.

lcrisci 5 hours ago

I love it. This is a step in the right direction to have a transparent database of existing laws and be able to consult them with your AI or anything capable to reason about them and explain the status quo of our national laws. I would love to see a similar setup for other countries.

wrxd 4 hours ago

It would have been cool if the commit authors reflected the actual politicians responsible for the reforms. Find a law, run `git blame` and immediately know who’s responsible for it

  • deepsun 4 hours ago

    And even more useful would be unit-tests -- here is a loophole and here is the law preventing it.

    Whenever a law is about to be changed/removed, run all the tests to make sure no regressions.

    • psychoslave 3 hours ago

      Jurisdictional laws don't work that way though. It's more like a script for improvised theater. Everybody get the same text, but no one gets the same performance twice.

    • ecocentrik 3 hours ago

      Tests for correctness, self similarity, duplication of concerns, contradictory statutes, edge case detection, cruft or outdated laws that muddy the waters...

      If the full compliment of software development practices were applied to legislation and ordinances we would be living in a very different world.

      • dylan604 3 hours ago

        oh gawd, code is law is back. or is it law is code?

theptip 5 hours ago

Nice! I was just implementing this for CA state bills.

Is the parsing/uploading code shared somewhere else?

Definitely the kind of idea that would have been below my activation energy pre-Claude.

I think this approach should be standard, I have always wondered why the source of truth for these documents is not moved to a repo like git.

  • dylan604 3 hours ago

    my first reaction cynically would bet that government really doesn't want the people to know exactly what the laws are. a more generous reason would be nobody in law is truly technical enough to understand it let alone implement it.

j-bos 8 hours ago

This is brilliant. I wish this were available for all legislations. There's so many inefficiencies that are trivially solved with existing tech frameworks.

  • Schmerika 8 hours ago

    > There's so many inefficiencies that are trivially solved with existing tech frameworks.

    There really, really are.

    The legal industry is well aware of that fact - and how many billable hours they stand to lose by making their work more efficient and understandable.

    You know how tax prep companies spent over $90m 'lobbying' Congress to ensure that filing your taxes remains difficult and complicated [0]?

    Well, lawyers know just as well or better how to butter their bread; and they will pull out every dirty trick they have to scupper attempts to make practising law more transparent or efficient in any way.

    0 - https://www.opensecrets.org/news/2023/09/tax-prep-companies-...

    • DennisP 6 hours ago

      It's not just the legal industry, it's the legislators. I used to be friends with a former state senator, who had a background in forensic accounting. She said they purposely made the bills harder to parse than necessary so it was hard to figure out what they were actually doing. Given enough time, people could do it but in practice there wasn't time before voting on the bill, and that was on purpose too. Of course some of it was to reward lobbyists or do other unpopular things, but she used to read bills from back to front because the back was where they put all the graft. An example I remember was $50K in taxpayer money going to a congressman's birthday party.

      For a while I thought about trying to write software that would turn the obscure natural-language diffs in written bills into a readable diff, showing the laws before and after with highlighted changes. But she said they just got the bills as paper printouts which weren't always even up-to-date, so it might not have helped much. Maybe now they're online. And LLMs might make the project easier.

      • FuckButtons 4 hours ago

        Presumably, there must be some point in time where the bill is made public in some form before going to a vote. If you could get the right tool in the hands of a journalist to turn whatever obscure format it’s in into something legible by an ordinary person there’s probably value there.

    • newyankee 5 hours ago

      and then we have people touting Jevon's paradox as outcome of AI disruption leading to more work. Before we create new work we need to figure out how to reduce incentive of people to unnecessarily complicate stuff and to be honest the answer is never clean or easy

    • wolfi1 7 hours ago

      unfortunately, laws are not everything. you need to know how to get around them. our country for example has the habit of creating a lex fugitiva that means that some regulations could be changed in other not related laws. good luck finding the correct regulation without a law degree

  • dgreisen 7 hours ago

    Our nonprofit, Open Law Library, is working on this exact problem. It is definitely not trivial, but it is very doable. We partner directly with governments to help them implement so the git repos become the canonical record (rather than just an unofficial mirror).

    Maryland just launched their regs on our platform:

    https://regs.maryland.gov (https://github.com/maryland-dsd/law-xml-codified)

    Feel free to reach out (email in bio) if you would like your community to publish their official laws on GitHub!

  • rafram 7 hours ago

    Everyone in government knows what Track Changes is. The standard format of a piece of legislation in British-influenced systems is a diff. The tech field does not have secret knowledge that the rest of humanity lacks.

    • dinkumthinkum 5 hours ago

      I was thinking the same thing. I feel like people in software tech always think they have secret powers that experts in other fields can't imagine.

  • appstorelottery 8 hours ago

    I couldn't agree more - this is fantastic work.

  • Esophagus4 7 hours ago

    > so many inefficiencies that are trivially solved with existing tech frameworks.

    Out of curiosity, like what specifically?

    Didn’t DOGE’s failure highlight that it actually wasn’t trivial? I’m skeptical at first glance but open to being proven wrong.

    • bojan 7 hours ago

      DOGE wasn't actually trying to make things more efficient. You can't count it as an honest attempt.

    • 0x3f 4 hours ago

      > Out of curiosity, like what specifically?

      For example, there are thousands of divisions of government out there provisioning largely the same systems in duplicate. E.g. the very local government here has a web portal for the sports venue bookings like pools and tennis courts. They have a waste collection portal. Local tax portal.

      Only recently has this been slightly standardized but even those efforts are purely regional. You might get 5 local councils in the city using one SaaS platform, another 5 using another SaaS platform, and another 5 rolling their own. For each function of local government.

      Nevermind the fact that a local government in France like this probably has very similar needs to one in Belgium or even the US.

      And the worst part is they are terrible at procurement so even when they do consolidate, they're basically getting scammed.

      I often think about starting a cost-plus-priced open core project to deal with these issues. Like we build common government functions, and sell it for cost plus 20% markup, with a licence that lets the gov run it themselves if we ever go bust. But then I think procurement is largely a grift game and it might not do well for that reason.

    • hirako2000 7 hours ago

      DOGE made the token gain more in market cap than it saved in expenses. Despite having at head a master of blind layoffs.

  • f1shy 8 hours ago

    I would like to have a legal advisor based on that. At least for a first question, qithout paying a lawyer

  • idiotsecant 7 hours ago

    And, in the example of the stereotypical venture capital seeking techbro junk that has somehow infected the entire world, this project doesn't actually understand or solve any real world problems.

    No shade on the author, they made a fun thing. I'm directing my cannons more towards the parent post idea that the world needs software developers for their rare genius to use their beautiful brains to solve problems in ways no actual participant in the system could have ever thought of.

    The additude that because you can prompt a LLM to write some python you are also uniquely situated to solve the world's problems is how we built an entire generation of automated solutions worse than what we had before.

Quarrel 8 hours ago

Great project.

For others wondering, while most of the Franco-era laws were nuked in 1978, this does include lots of old laws (ie pre-20th C).

However, the source material starts with a sqashed commit in 1960 :) So no changelog before that. The BOE source though is pretty phenomonal, they've scanned files going back to the 1600s so far.

cyrusradfar 7 hours ago

I think this is great. Only limit of git is I can't imagine "git blame" works. It would be nice to know who voted for and against each patch. Git isn't structured for collaborative commits.

  • hirako2000 7 hours ago

    That could actually be a git commit log with date, votes and other metadata.

    But getting the entire country's law into git is already an impressive feat.

    • 3eb7988a1663 4 hours ago

      If we are spitballing, I think there should be an actual file associated with the text so you can see the vote. A file makes it trivial to grep for "Senator X".

      Not git, but Congress actually does have quite a bit of data digitized. A random example[0] -they even provide XML. The Congress data is going to give you all bills - many of which do not pass, so a different mission than this project.

      [0] https://www.congress.gov/bill/118th-congress/house-bill/4818

  • embedding-shape 7 hours ago

    > Git isn't structured for collaborative commits.

    Git isn't structured for collaborative commits, but community-wide conventions kind of "patches" support for it on top of the git message body, via "Co-Authored-By: name <name@example.com>" which IIRC most platforms support, and the convention itself initially comes from Linux kernel development.

  • 1718627440 6 hours ago

    You could have the parliament (meaning including the election cycle) as the main author and then the parties and votes as Co-Authors.

  • dinkumthinkum 5 hours ago

    Is this really a problem we have now, though? This information is publicly available. If everyone here is so excited about LLMs then why would this even be needed? Anthropic can just give us the answer to every question. We don't need nerds that know what git is. :)

  • nuhuhh 7 hours ago

    Yeah you can, just smash commits on the PR where multiple contributed. It will say it was a collaborative commit in history showing all their avatars.

josalhor 7 hours ago

Not only would be cool for laws to have appropiate time stamps so we can "go back in time to how it was at a certain moment", but also if we could have proper git commit diffs of how laws change over time. See this: https://www.boe.es/buscar/act.php?id=BOE-A-2015-11430

You can see how certain articles have the option to check "how that particular article was at each moment in time". That would be way harder to track, but it would be awesome if not only could you "go back in time and see what the law was" but also "how its been evolving".

  • jonhohle 7 hours ago

    Not only that, but authors and approvers could be used to track who created and voted for each change.

    • dan_linder 6 hours ago

      Then compare wording and structure with other bills proposed elsewhere to look for single sources trying to legalize an agenda or retry after earlier failed attempts.

  • upcoming-sesame 5 hours ago

    it would also be cool to know the "why" that went into the change

vitorbaptistaa 7 hours ago

Congratulations! This is a very cool project. A few years ago there were similar ones -- browse gitlaw.

In Brazil we have lexml, a standard to describe the law and their changes over time. It's surprisingly complex.

  • phlakaton 7 hours ago

    Hah! XML strikes again. :-)

    I understand that Spain was a participant in LexML as well... I gather they've since converted to something else?

matthewgard1 2 hours ago

I did something very similar for some US state level laws. "Legit" legislative git.

Useful for alerts in our concern area, and monitoring proposed legislation iteration and flow through committees to keep ahead.

I can imagine quite a few other more civic interest uses as well!

Hoping to open source some later myself, seems an area ripe for some open civic citizen/hacker projects. Bet some fun startups could be made on top too, gl.

zaep 7 hours ago

Nobody seems to have (yet) mentioned the most recent (rn) commit [1] dated 2099. I can't really figure out where the date came from, at the source noted in the commit I find no '2099', I can't see it being a joke, if it's a bug it's not obvious to me..

I'm sure I won't be the only one curious, please enlighten me.

[1]: <https://github.com/EnriqueLop/legalize-es/commit/424cbc96507...>

  • gloosx 7 hours ago

    Classic. He forgot to add "make no mistakes" to the prompt. Based on the commits alone Im not sure anyone really reviewed the correctness of the git history.

    When someone specifically mentions "built in ~4h with Claude Code" they probably didn't care that much about the outcome quality

    • forgotpwd16 5 hours ago

      It's a cool PoC even if implementation/result isn't perfect.

pilingual 4 hours ago

One idea behind the PoC Right to Privacy Act is having tests. A recurring theme with conservative Justices is clarity of legal text.

Testing may not exhaust all scenarios but it is useful to see where loopholes may exist or whether a bill that sneaks in while you aren't paying attention is unfavorable to your values.

https://github.com/righttoprivacyact/bill/blob/main/tests/te...

  • rafram 3 hours ago

    This is incredibly software engineer-brained. The law doesn't work like software. The only thing that matters is how the judiciary interprets the text, and if you try to use LLM "test" output to argue for a specific interpretation, you'll be laughed out of court.

  • psychoslave 3 hours ago

    Laws are there to inform the land how the dominant class expect to be served. At least in theory the dominant class could be the working class or the majority, mind you. In practice you generally get a better idea looking at what small network core founded the country, generally through bloody wars or genocides.

PhilipV 4 hours ago

Well done. I believe that Governments should have a Open Licence for copyright purposes like exists in the UK that allows Govt docs to be used for commercial purposes without issue. I would want to propose a step forward there so that the next generation of this open licence actually has a data set approach to making data sets available - possibly at cost. Governments are losing the ability to charge for nominal items in paper as digital is so openly available - they can make a revenue on providing data at large to public so that others can build or simply if not for free.

Well done and great to see items like this and great to see the comments.

  • postepowanieadm 3 hours ago

    Legislation is out of copyright. Unofficial consolidated versions may be a different matter.

  • 0x3f 4 hours ago

    The UK is IMO quite terrible in this regard. Yes, a lot is OGL, but very key items are sequestered away and very costly to obtain. OGL is a total bodge; just get rid of Crown Copyright.

    When it comes to the law specifically, there's a whole silly setup with transcription companies as well.

comboy 7 hours ago

Add CI to check if new laws don't contradict with any existing ones.

  • bertil 6 hours ago

    You might need to turn laws into formal proofs, and the existence of judges makes me think that’s not as likely as you would like. A commenting system would though—trained on countries’s precedents, jurisprudence and traditions might.

  • whattheheckheck 6 hours ago

    Can you imagine rebases with merge conflicts?

    • bentcorner 4 hours ago

      This could in theory already happen without any tech, but I suspect since the government is pretty monolithic, any changes in a specific law are all being done by the same set of people.

      You might not have merge conflicts but I imagine you could end up with conflicting guidance from two separate pieces of law (e.g., law A says you must wear green on St. Patrick's day, law B outlaws green pajamas).

maCDzP 5 hours ago

Nice, I am going to this for Swedish law! Any suggestions on how one can model parliament voting when a law passes using GitHub? Or all the work that preceded a law, that’s like a feature request or a bug report.

  • juahan 2 hours ago

    I started doing it for Finland!

  • setopt 5 hours ago

    Parliament voting, maybe upvotes and downvotes on a pull request?

MinimalAction 6 hours ago

The general sentiment here is that it's a great project. Could someone please explain why? All I'm seeing is that laws are updated with commits within markdown files.

  • saadn92 6 hours ago

    The value is in the semantics git gives you for free once the data is in this shape. Right now if you want to understand how a law changed, you go to the official gazette website and read a document that says "strike paragraph 3 of article 12 and replace with the following text." You're doing the diff in your head.

    With this repo, git log --oneline -- spain/BOE-A-1978-31229.md gives you every reform to the Spanish Constitution in one command. git diff between any two reforms shows you exactly what changed in context. git blame tells you which reform touched which article. These are operations that would take a lawyer hours of cross-referencing, and they're free once the data is structured this way.

    The other great thing: you can build tooling on top of it and use it with the CLI.

    • MinimalAction 5 hours ago

      Thanks for a beautiful explanation. Makes sense now that this repo enables git diff, git base to reveal changes easier.

      • saadn92 3 hours ago

        of course, thanks for asking a great question!

  • xeromal 6 hours ago

    The why is that it's cool. Why it's not cool for you cannot be explained by us, only you.

    • MinimalAction 5 hours ago

      I didn't say it's not cool. I was trying to understand the utility of it being great.

      • xeromal 5 hours ago

        Coolness and greatness can be the same thing.

        For instance, the big Lebowski is great and cool.

boredatoms 4 hours ago

Is there something like this for the US?

  • wavemode 4 hours ago

    Even if there were, it wouldn't be very useful. In a "common law" system like the US, legal questions are rarely answered purely by the plain text of a law. You also need case law - that is, how the law is typically applied in practice by the courts.

    • boredatoms 3 hours ago

      Sure, then that with case law too?

  • the-rc 3 hours ago

    There was a project at Google Chicago to do something like that, around 15 years ago. For some reason, it was never launched.

sebastianconcpt 5 hours ago

We need something like this for every country.

8bitsrule 5 hours ago

Looks like we're heading toward some resolution to the old problem 'ignorance of the law is no excuse'. Born in a world with plenty of laws, the jeopardy that goes with them, and no easy and reliable resources, that would certainly be welcome.

bertil 6 hours ago

This is a key project, and I’m sure many countries have enough developers who might try and get it done, but a project that can do it for most legal systems (assuming the sources are on-line) would help a lot more people access legal resources.

notorandit 2 hours ago

That's how it should be everywhere!

coopykins 8 hours ago

Hey, very nice! Seems like a great way to have LLMs answer questions about the laws more reliably.

  • worksonmine 4 hours ago

    Hey! How can I make this about LLMs?

    (Many countries' laws are already available online and included in the dataset they're trained on. The project is very cool for humans though.)

0x3f 7 hours ago

Neat. I wonder if there are commercial products that are formal specifications of laws, decisions, etc. Such that you can reason on them via solvers etc.

  • embedding-shape 7 hours ago

    I think it's a rite of passage for every developer who ever touched the ecosystem of law to also wonder the same. Probably even since the invention of "business programming" there been developers wondering this. Many has attempting, so far, I don't think anyone succeeded.

    But I'm sure someone at some point might figure it out, you never know :)

    • 0x3f 6 hours ago

      Well, there's a new batch of autoformalization attempts with LLMs now. Although I've also heard people say autoformalization will always be impossible.

      It's interesting to wonder what kind of coverage Cycorp managed to achieve internally, and on what domains. Seemingly no job openings at the moment though!

throwaway_2626 8 hours ago

This is amazing. I have a couple of suggestions: - Maybe breaking the "Spain" folder into subfolders? Not sure what categories could be used, but browsing would be easier. - There's a missed opportunity in having different authors for the commits (maybe the "legislatura" number), and possibly, tags/labels including the political parties that voted in favor of each.

I'll take a look at data to enrich it :).

larsiusprime 8 hours ago

Is the idea that the commits themselves are also time stamped with the date of the legislation/amendment too?

sandbx 5 hours ago

Did you try more heading levels for the article names?

d0m 8 hours ago

I wonder which country will be the first to be run entirely by AI instead of corrupt politicians

  • layer8 7 hours ago

    I don’t think a country where everyone is absolutely right would work.

    • canyp 3 hours ago

      You're absolutely right.

  • logicallee 6 hours ago

    >I wonder which country will be the first to be run entirely by AI instead of corrupt politicians

    State of Utopia[1] has this manifesto[2]. In our estimation (and we use AI a lot), it is not powerful enough to govern a country yet. We thought it was worth trying anyway.[3] We would like it to be able to handle contexts that are millions of times greater (think more like 1 billion tokens than 1 million tokens), and even so AI governance is a very difficult matter. In addition, once AI governance is achieved, how can you truly trust the governance model not to be corrupted? Transparent government run by AI is an additional point of difficulty. These days, the most difficult unsolved problem is how to introduce voting and users' comments without inviting comment spam and vote rigging. You can watch my latest update here[4] (I'm sorry, it's very quiet), and we welcome your input on all subjects. We have a fully autonomous agent currently running the country, which consists of a Mac Mini and a Claude subscription (plus our own dedicated server in a country that recognizes us, and we have a couple of other embassies by agreement and legal contract). But in practice this government just does whatever I tell it. It's not advanced enough to run a code of laws, which is one of the basic requirements citizens expect of their country. The size of problem space for running a country is larger than models can handle, but many things help.

    One of the best hopes we have is with deterministic offline models where we share the pipeline with people ahead of time, so they know exactly how it will work. This could be a trustworthy matter of dispute resolution, if we get the architecture right.

    For example, our country could help you sign a contract and in case of dispute, both parties could submit supporting documents and make statements and the offline model they agreed to at the time of signing their contract could adjudicate. This pipeline could be transparent from the start. This won't satisfy everyone, but might provide the minimum standard of having a code of laws that assists with contract enforcement. For now, all you can really do is keep checking our site for updates and leave comments about what direction you'd like the country to take. (For example, you can leave a comment on my latest update on Youtube.)

    [1] https://stateofutopia.com

    [2] https://claude.ai/public/artifacts/d6b35b81-0eeb-4e41-9628-5...

    [3] https://medium.com/@rviragh/ai-is-not-ready-to-create-utopia...

    [4] https://www.youtube.com/live/K0dgrPRWPCs

rwmj 8 hours ago

This is great. Compare it to British legislation which is frankly a mess of patches. Example picked fairly much at random, this law was originally passed in 1990 and has been "patched" regularly:

https://www.legislation.gov.uk/ukpga/1990/18/section/9

Laws being passed are these ludicrous sets of patches:

https://www.legislation.gov.uk/ukpga/2015/9/part/1

  • gus_massa 7 hours ago

    I think it's similar everywhere. IIRC from time to time here in Argentina when there are too many big changes, the legislature make copy of one old law with all the amends and add all the new ones and approve the new version. Let's say every 50 years or so, and not all the laws at the same time. So the "current" law is a mostly a mess of patches.

    The main difference is that in Britain the judge decisions become almost-laws, so it's like a repo with too many people with commit right. I think in Spain the judge decisions have less weight and only the legislature has commit permissions .

  • postepowanieadm 3 hours ago

    It's not messy. You have to take into account that every patch is voted separately - read Robert's Rules of Order for an enlightenment ;)

  • codethief 8 hours ago

    I think such "ludicrous sets of patches" are very common in many jurisdictions. (At least in Germany they are.) I agree, though, git patches would be a lot nicer.

  • hirako2000 7 hours ago

    Also the principle of common law.

  • gib444 5 hours ago

    Let's hear your solution to the mess.

SweetSoftPillow 6 hours ago

We need it for every country and every law in the history of humanity

Ericson2314 6 hours ago

All legislatures need to work this way as soon as possible!

makaking 5 hours ago

I love this. This made me think that logging all legislation in a public VCS might be a very good way to leverage superintelligence while maintaining democracy. I want this for Germany.

ivanjermakov 7 hours ago

I'm surprised the world is not running a system where laws are formally encoded using some DSL that would allow making decision (guilty/not guilty) using formal logic. Perhaps there is not much interest from law making/enforcing parties for this either.

  • rrr_oh_man 7 hours ago

    That's a common fantasy of developers who haven't touched grass in a while.

    • bonoboTP 6 hours ago

      It's a rehashing of Leibniz's "Calculemus!".

      It's not a fully stupid idea, many rules can be automated and indeed have already been. The things that courts still have to decide manually are the leftovers that require more human judgment.

      • fph 5 hours ago
        2 more

        This pipe dream will soon be replaced by "let's have the first degree of judgment be ChatGPT; human judges should only deal with appeals".

        • rrr_oh_man 3 hours ago

          Sounds like every self-driving startup

    • krzyk 3 hours ago

      Why is it a fantasy to have a fair system with no room for interpretation?

  • rileymat2 7 hours ago

    You’d also probably be surprised about how subjective and unevenly applied the law is… by design, to allow appropriate outcomes and discretion.

    Edit: Consider the following words included in law.

    “reasonable” “reckless” “due care”

  • bentcorner 4 hours ago

    I don't think this is where the problem lies. If you kill someone with intent, it's murder. But the whole system needs to prove that you killed someone with intent beyond a reasonable doubt, and a DSL will not help you there.

  • bonoboTP 6 hours ago

    Have you actually tried reading a single law? If you have, have you tried to write just one article in formal logic?

    Certain laws, like parts of tax law may be possible to turn into code, like percentages and deadlines, but even those often carry natural language conditions that can't be evaluated so easily. Seriously, try it.

  • gloosx 6 hours ago

    Maybe we should go further and use some DSL to speak with each other in the first place? Would def make everything straight and eliminate ambiguity!

    • bonoboTP 6 hours ago

      That's Lojban.

      Turns out, ambiguity is an intentional communicative tool.

d--b 8 hours ago

I think French laws have been on website that’s like that for a while

drob518 6 hours ago

The date of the last commit is 2099.

MomsAVoxell 8 hours ago

Great idea! I hope you did something like:

  $ git commit --amend --author="Author Name <author@spanish.gov>" --no-edit
.. with the details for the author of each commit.

Then, it would be simply amazing to run gource, sit back, and watch where all the noise is coming from.

Gource:

https://github.com/acaudwell/gource

What gource looks like:

https://gource.io/

I’ve long wanted to see gource applied in other sociologically-relevant contexts and this’d be a real good one ..

  • PenguinRevolver 3 hours ago

    I tried using Gource and... well, the commits were not sorted by date, so the time goes all over the place.

smashah 8 hours ago

I've been saying for years that any and all legal documents (and all lawyers) should be required to be on/use git

sh-cho 4 hours ago

Good Idea!

AtomicOrbital 6 hours ago

all of government data including all laws especially tax law needs to be put online and optimized by ML

TZubiri 7 hours ago

I've seen something like this before, here's the Argentina constitution as a git repo, with reforms as commits. Much shorter in scope, but this was pre LLM coding

P.S: Sadly my PR amendment was repealled

peterhadlaw 7 hours ago

Does it include the law that made it okay for Noelia Castillo to commit suicide the other day?

  • embedding-shape 7 hours ago

    I think it was "okay" even before that law to be euthanized. However, the law adds a "a legal, systematic, balanced and guarantee response to a sustained demand of today’s society such as euthanasia".

    But yes, it seems it is included indeed: https://github.com/EnriqueLop/legalize-es/blob/master/spain/... (which seems to have been well written enough to not needing any changes [so far])

    Very glad my country is so compassionate with people that we can facilitate things like things when needed.

    • peterhadlaw 6 hours ago

      "culture of death"

      • embedding-shape 5 hours ago

        We all die, so I suppose for some of us, "good death" is better than "forced to be alive although you don't want to". Worth remembering where the word comes from:

        > Euthanasia (from Greek: εὐθανασία, lit. 'good death': εὖ, eu, 'well, good' + θάνατος, thanatos, 'death') is the practice of intentionally ending life to eliminate pain and suffering.

  • mold_aid 7 hours ago

    I would assume so. But that's probably it; it's for Wikipedia to record the failed attempts of Christianists to make it not "ok."

    Like many, you are confusing "making it legal" for "making it ok." But that is of course the root concern of Christianism as an ideological project. Thankfully the correct legal interpretation won out here, as it did in the US Schiavo case(s).

  • brandnewideas 7 hours ago

    There are laws that prevent you from committing suicide?

    • torcete 7 hours ago

      It was assisted suicide. Meaning the government helps you to commit suicide.

      • ks2048 5 hours ago

        Generally legal assisted suicide doesn't mean "the government helps you commit suicide" - it means it's not illegal for a doctor assisting a patient to commit suicide.

      • downsplat 5 hours ago
        8 more

        It's called euthanasia. You can ask the medical system for an assisted suicide if your life situation is extra painful with no hope for recovery.

        This case got heaps of media popularity because the christian right wing latched on it, and the father tried as hard as he could to impede the euthanasia. Ultimately got told that the lady unequivocally wants it and qualifies, and he can't override that.

        • embedding-shape 5 hours ago
          7 more

          > Ultimately got told that the lady unequivocally wants it and qualifies, and he can't override that.

          Not just once, but five times by different courts, finalized by the European Court of Human Rights!

          > Her request had been approved on July 18, 2024, by the Catalonia Guarantee and Evaluation Commission. The commission found that she met all legal requirements, as she had a “nonrecoverable clinical situation,” causing “severe dependence, pain, and chronic, disabling suffering.”

          > But in August of that same year, her father – advised by the ultraconservative religious group Christian Lawyers – began a legal fight to stop the process

          > From then on, her father initiated a long legal process that delayed Noelia’s euthanasia for 20 months, going through five judicial levels: a Barcelona court, the High Court of Justice of Catalonia, the Supreme Court, the Constitutional Court, and the European Court of Human Rights.

          • OrangePilled 5 hours ago
            6 more

            Your enthusiasm is remarkable.

            • embedding-shape 4 hours ago
              5 more

              I come from a society that doesn't value compassion that much, so now when I live in Spain which has a lot of it, it's hard not to feel good about it. Wish it was the same in more places in the world, we're all human after all.

              • OrangePilled 3 hours ago
                2 more

                It shows.

                • embedding-shape 3 hours ago

                  Great, guess I've learnt sufficient English to be able to communicate my ideas and thoughts, thanks!

              • peterhadlaw 3 hours ago
                2 more

                Cold-blooded murder ~= "compassion". Got it. Cool.

                • embedding-shape 3 hours ago

                  Helping someone avoid "nonrecoverable pain, forever" isn't "cold-blooded murder" in my mind, but I figure there is no point is arguing against someone who doesn't understand nuance.