The lockfile for your design system.

Strict Mode compiles your design system's rules into a lock with authority, checks every change against it, and blocks what fails. Audit comes built in.

01The problem

Your design system is advisory.

Every team with a design system has the same experience. The tokens are documented. The components are cataloged. The rules are in Figma, in Storybook, in the agent instructions, in the lint config, in the review checklist. And drift still reaches the pull request, where the people who know the system spend their attention repeating decisions the system was supposed to settle.

Coding agents made it worse. Interface code is cheap to produce now. The rules did not get any more enforceable.

This is not a documentation problem. It is the absence of a layer with authority.

02How it works

Compile. Check. Record.

01

Compile

strictmode compile resolves your policy source into strictmode.lock. Every rule has an id, a severity, an owner, and a source. Every allowance has a reason and an expiry. Every tolerated defect has a fix path.

02

Check

strictmode check evaluates your working tree against the lock. Exit codes are the authority. An expired allowance fails. A tolerated defect that was quietly fixed fails. A rule no adapter can evaluate is reported as uncovered, never silently passed.

03

Record

Every check leaves evidence: what ran, against which lock, with what active, and what was blocked.

The lock, the engine, and the rule packs
03Not a linter

A linter runs a config. Strict Mode runs a lock.

The scanner underneath is ordinary and it's open source. What a team adopts is the lifecycle above it: a versioned lock with a source hash, allowances that expire, a ledger that fails when it's repaid, and coverage reporting that says exactly where enforcement is still advisory.

Structural enforcement, property by property
04Built inside a real system

Five products run it. All five are in house.

The engine was built inside Form Logic, a private design system, and ships today as its governance package. Five products run it, and every one of them is an in-house project. There is no external customer yet and no case study to point at.

One of those products filed thirty defects against Form Logic by hand, with no scanner installed anywhere in its pipeline. The day the governance package landed there, the first run found drift that the hand review had missed. That gap, between careful reading and a check that cannot be skipped, is the one the lock closes.

This site runs the same engine. The lock on the approach page is this repository's own.

05Install

It's on npm.

npm i -D @strictmodeai/core

MIT. No runtime dependencies. The command it installs is strictmode.

View on npm

The engine is MIT and has no runtime dependencies. It ships today inside Form Logic, runs on this site, and installs anywhere. The rule packs, the hosted pieces, and the first design-partner engagement are still ahead of it.