kaisel

kaisel.dev · 2026-08-01 · by Long Nguyen ·generic
A Dart 3-native router for Flutter — routes as values. No string paths, no codegen.

kaisel

The idea behind kaisel — Flutter Routes as Values →

kaisel

Routes as values. A Dart 3-native router for Flutter — no string paths, no codegen.

Get StartedView on GitHub

Get started

flutter pub add kaisel

The getting started guide takes you from install to navigating with typed routes in a few minutes — sealed class, exhaustive `switch`, done.

Sealed routes, exhaustive builds

Navigation is a `switch` over a sealed type. Add a route and the compiler finds every place that must handle it — no runtime “unknown route” left.

The stack is a value

Your history is a `List` of route objects. Push, pop, and set are list operations — testable without a widget tree, restorable across process death.

Every navigation. One observer.

Register a standard `NavigatorObserver` once — it sees tab switches and adaptive in-place changes that produce no route event in other routers.

Zero codegen

No `build_runner`, no generated files, no magic strings. Routes are plain Dart classes you already know how to write.

Learn

kaisel.dev · 4 images · 20 links

Comments (0)

No comments yet