Going All-In on Rust
June 25, 2026

Before joining Neon Law, I taught programming at Apple. One thing I noticed from that work is that vibe coding has democratized software. Pretty much anyone can build something now. That is wonderful, and it also raises the stakes: if we are going to use agentic tooling to write real systems, we should choose a language that gives the agent, the human reviewer, and the production operator as much help as possible.
For Neon Law Navigator, that language is Rust.
The reason is simple: Rust can work almost anywhere. The same language can power a Windows laptop, a Linux server, a Mac, an embedded device, a cloud container, a local dev box, a command-line validator, a web service, a workflow worker, a game engine, a layer-zero blockchain tool, and whatever comes next. For access-to-justice software, that matters more than fashion. One stack means fewer handoffs and fewer ways for a small team to lose the thread.
Rust also gives us a governance story we trust. The language is stewarded by an independent nonprofit, not by one vendor whose incentives may change later. That matters to a legal-technology commons. The Java API litigation between Oracle and Google is a useful reminder that language ecosystems can carry legal and institutional risk. We like that Rust's community made the boring, generous choice early: permissive open-source licensing, independent stewardship, and a culture that treats the ecosystem as bigger than any one company.
That is the shape we want for Navigator too. Neon Law Foundation can steward the project in public; Neon Law can run it in production; other lawyers, legal-aid groups, students, and builders can fork it, rebrand it, and make it their own. The repository is Apache-2.0 or MIT because we learned from the Rust community here too. The point is not to trap the work inside one firm. The point is to make the work usable beyond us.
Neon Law Navigator ships as a CLI, an LSP, and a web service. That is deliberate. You should be able to try the whole system locally without a cloud subscription. You should be able to create legal documents in an editor, with code semantics, diagnostics, squiggly lines, and fixable errors. A legal workflow should be something a person can run, inspect, and improve without needing five runtimes or a perfect Internet connection.
Rust can be tough to learn and tough to write. We do not think that is a reason to avoid it, especially in a world where agents can write more of the first draft. The better question is what the human should review. We would rather review types, data structures, tests, and compiler errors than sift through a pile of code that only works because the happy path happened to run once.
Linus Torvalds put the data point sharply in a 2006 Git mailing-list post mirrored by LWN: "Bad programmers worry about the code. Good programmers worry about data structures and their relationships." Rich Hickey, the creator of Clojure, makes the complementary point in Clojure's official essay on values, identity, and state: an identity is a stable logical thing associated with different values over time.
That is exactly how we want agents helping us build legal software. Start with the data. Understand how it changes over time. Write the behavior down as tests first. Translate plain-English expectations into executable Cucumber-style specs. Then let Rust carry those steps into the system that creates Notations, validates them, routes them through attorney review, and produces legal documents people can actually use.
That is the access-to-justice bet. Cancer, divorce, caregiving, debt, immigration, formation work: people reach for legal tools when life is already heavy. The software should open quickly, explain itself, and keep working close to the machine in front of them.
We feel great about Rust because we feel great about the ecosystem around Rust. We are heading to the Rust NYC meetup soon to talk about this work, and about a larger hope: that lawyers who understand software can build and maintain more of their own tools. Not because software engineers do not matter, but because the Rust ecosystem now carries enough of the serious machinery that the old split between "lawyer" and "software developer" can get a little less rigid.
Anyone can vibe code these days. Going all-in on Rust is how we make that power inspectable, local-first, and durable enough for legal work.