Five concrete outcomes
- AsyncValue handled correctly every time. No more half-implemented
.whenblocks. Loading + error + data states ship together. - State is immutable by default. copyWith + freezed + value-equality discipline enforced automatically.
- No leaked Streams or controllers. Async-discipline rule catches missing dispose calls.
- Performance budgets respected.
constwidget rule + RepaintBoundary suggestions in the right places. - Accessibility shipped, not deferred. Semantics, screen reader hints, contrast checks become part of the default output.
What's inside
10 enforceable .mdc rule files for Cursor, a bundled CLAUDE.md for Claude Code. Plus LICENSE, README, landing-copy, and assets.
ref.invalidate.const widgets, RepaintBoundary, profile-mode tips.FAQ
Will this work with Bloc / Provider / GetX instead of Riverpod?
The architecture, async-discipline, accessibility, performance, and i18n rules apply across state managers. The riverpod-patterns.mdc is specific to Riverpod 2.4+; if you're on a different state manager, ignore that one rule and the rest still help.
Does this include code generation templates?
No — this is a rules pack, not a scaffolder. The agent writes the code; the rules ensure it writes the right kind.
Personal vs Commercial?
Personal is one developer, unlimited Personal Projects. Commercial covers an entire legal entity (all paid contributors), permits use inside products you sell, and permits internal forking. See LICENSE.
Updates and refunds?
Patch-level v1.x updates free for life of license. 14-day no-questions refund through Lemon Squeezy.
Available now
Instant download after payment. 14-day no-questions refund. Crypto via Cryptomus; card via Lemon Squeezy (Merchant of Record — handles VAT, receipts, and refunds).