Kaisel – Routes as Values. Dart 3 Native Router for Flutter

Aug 01, 2026 11:45 PM - 2 hours ago 2

Sealed routes, exhaustive builds

Navigation is simply a move complete a sealed type. Add a way and the compiler finds each spot that must grip it — nary runtime “unknown route” left.

The stack is simply a value

Your history is simply a List of way objects. Push, pop, and group are list operations — testable without a widget tree, restorable crossed process death.

Every navigation. One observer.

Register a modular NavigatorObserver erstwhile — it sees tab switches and adaptive in-place changes that nutrient nary way arena successful different routers.

Zero codegen

No build_runner, nary generated files, nary magic strings. Routes are plain Dart classes you already cognize really to write.

More