Blint

Blint makes AI-coding
predictable and scalable.

Define your best design ideas as patterns, document the purpose behind your code, and enforce both consistently — across every file, every commit, every contributor.

Free for public patterns.

Blint desktop app showing coverage map, pattern status, and CLAUDE.md management

Don't be surprised by how your code is designed

Even with industry standards, there's still a lot of variability to account for. Two developers solving the same problem will produce two different solutions — and AI amplifies that inconsistency. Blint makes it easy to reuse and share your best ideas, so every solution follows the same well-considered approach.

Patterns and documentation govern your codebase at the design level — not implementation details, but the ideas and principles that should steer every line of code.

The why and the how

Controlled code answers two questions: why was it written, and how should it be designed? Blint gives you a tool for each.

Documentation — the why

Documentation captures business purpose and domain concepts. What does this service do? Why does this workflow exist? What are the core entities and how do they relate? These are project-specific ideas that give your code context — so your AI understands the system it's building, not just the file it's editing.

Colocated markdown docs, versioned with git, visible in the app, and feeding into your coverage map.

Patterns — the how

Patterns capture design decisions and coding conventions. How should data be validated? How should errors be handled? How should components load async data? These are reusable ideas — some specific to your project, some shared across the industry — that keep code consistent as it scales.

Markdown files with glob matchers, living in your repo. Your AI reads them directly. Publish reusable ones to the registry.

What's a pattern?

Your opinionated take on how something should be done. Not a full technical spec — a design principle with teeth. Each pattern targets specific files via globs and gets enforced by your AI tools automatically.

Environment Configuration

Fail fast with explicit values. No defaults, no fallbacks — validate all required variables at startup and throw on anything missing.

ops:environment

Async Loading Component

Centralise loading, error, and retry UI for React Query. One component handles the state machine — no three-way conditionals scattered across every file.

frontend:async-handling

Data Model Handling

Shared Zod schemas as the single source of truth. Validate at API boundaries, infer TypeScript types from schemas, transform wire formats during parse.

data:models

Service Events

Lightweight DynamoDB-backed event logging for business visibility. Track user actions and system events without the cost of a third-party platform.

ops:observability

Lambda Tips

Every Lambda gets a health check action, debugging flags (verbose, dry), and version reporting. Scripted verification on deploy.

backend:api-design

API Mocking Pattern

Clean swap between real and mock APIs using React Context. Develop and test without backend dependencies. No conditionals in component code.

frontend:testing

The best thing about standards is there are so many to choose from. Patterns let you pick yours and stick with them.

View all patterns in the registry →

Controlled code

Every file in your project is either governed by patterns and documentation, or it isn't. Blint shows you the split — a coverage map where you can see at a glance how much of your codebase is under control. As your codebase grows, this visibility matters more.

What you get

Coverage map

A treemap of your entire codebase. See which files are pattern-controlled, which are documented, and which are unmanaged. Drill into any file to see exactly which patterns and docs apply.

Codebase documentation

Manage colocated markdown docs that capture domain concepts, business logic, and architectural decisions. See what's documented and what isn't.

Share patterns across projects

Publish patterns to the free registry. Pull them into other projects. Keep your standards consistent across repos.

Community patterns

Browse and install patterns from other developers. Start with proven approaches instead of reinventing conventions.

Isolated development

Built-in tools for writing code in isolated environments, so multiple features can be developed simultaneously without conflict.

CLAUDE.md management

Sync your patterns and documentation into your CLAUDE.md file. Keep your AI's context up to date without manual editing.

What Blint isn't

Blint is not a thorough technical specification for your codebase. It's not about documenting every function signature or API contract. It's about higher-level design principles and domain concepts that steer code in the right direction — the kind of knowledge that usually lives in someone's head or gets lost in a wiki.