COOLJAPAN
← All posts

Legalis-RS 0.1.1 Released — UK & Singapore Join, 9,568 Tests Passing

Legalis-RS 0.1.1 adds United Kingdom and Singapore jurisdictions to the Pure Rust legal-DX framework and grows the test suite from 6,100+ to 9,568 across 23 crates, with a near-zero-warning quality pass.

release legalis legal-tech rust legal-dx jurisdictions formal-verification

The United Kingdom and Singapore are now first-class jurisdictions in Legalis-RS — and the test suite jumped from 6,100+ to 9,568 along the way.

Today we released Legalis-RS 0.1.1 — our first patch on the legal-DX framework, adding two common-law jurisdictions and a big test-coverage jump.

No C. No C++. No Fortran. No JVM. Where closed legal SaaS, academic tools like Catala, the Z3 SMT solver (C++), and Java/Python legal-reasoning stacks dominate the field, Legalis-RS is Pure Rust to the core. The result compiles to a single static binary or to WASM, so the same statute engine runs on a server, in a CLI, or in the browser — with no native runtime to install and no foreign-language toolchain to drag along.

Legalis-RS turns statutes into structured, machine-verifiable code, cleanly separating Deterministic Logic (what the law mechanically computes) from Judicial Discretion (what a court must still decide). That is the whole bet of Legal DX, and 0.1.1 is about proving the bet holds across more than one legal tradition.

Why 0.1.1 matters

The 0.1.0 debut proved the engine worked. 0.1.1 proves it generalizes.

This is our first patch release, and the test suite already jumped by more than 3,000 cases — exactly the kind of momentum we wanted out of the gate.

What’s New in 0.1.1

New jurisdictions (2):

Improvements:

Bug fixes:

Code quality: 50+ clippy auto-fixes; crate-level #![allow(...)] for accepted patterns (type_complexity, too_many_arguments); converted unwrap()-after-is_some() into idiomatic if let Some(...).

Statistics (0.1.1):

Under the hood the architecture from 0.1.0 still applies: a Core layer (legalis-core / legalis-dsl / legalis-registry), an Intelligence layer (legalis-llm + legalis-verifier), a Simulation layer (legalis-sim / legalis-diff), plus i18n/porting, interop, visualization/chain/lod, audit/api, and the legalis CLI on top. 0.1.1 leaves that stack intact and focuses on breadth (UK + SG) and quality.

Getting Started

Add the core library:

cargo add legalis-core

The library crate is legalis-core; the CLI binary is legalis.

Then build a statute directly in Rust:

use legalis_core::{Statute, Condition, Effect, EffectType, ComparisonOp};

let statute = Statute::new(
    "voting-rights",
    "Voting Rights Act",
    Effect::new(EffectType::Grant, "Right to vote in elections"),
)
.with_precondition(Condition::Age {
    operator: ComparisonOp::GreaterOrEqual,
    value: 18,
});

The same primitives that express this rule now back the UK and Singapore jurisdictions too — a UK Employment rule and a Singapore PDPA rule are described with the identical Condition / Effect / Statute vocabulary.

Tips

The COOLJAPAN ecosystem

Legalis-RS is a Pure-Rust COOLJAPAN library, built in the same spirit as siblings like SciRS2 — fast, dependency-light, and free of foreign-language runtimes in the core.

Repository: https://github.com/cool-japan/legalis

Star the repo if a Pure Rust legal-DX framework is something you want to see grow. Pure Rust legal-tech is here — fast, safe, and sovereign.

KitaSan at COOLJAPAN OÜ January 10, 2026

↑ Back to all posts