Hi folks, I just published Laydr 0.1.0. Laydr is ...
# feed
t
Hi folks, I just published Laydr 0.1.0. Laydr is file-based, type-safe navigation for Compose Multiplatform and Android Compose apps. The core idea: your
routes/
directory becomes the visible app map, and Laydr generates the Kotlin destinations, path builders, route maps, Compose entrypoints, and (optionally) Nav3 wiring that usually drifts when maintained by hand. Repo: github.com/mobiletoly/laydr It supports: - Compose Multiplatform on Android, desktop/JVM, iOS, and WasmJS - plain Compose hosting - JetBrains Nav3 KMP via laydr-nav3-kmp - Android-only AndroidX Navigation 3 via laydr-nav3-androidx If you have dealt with copied route strings, duplicated graph setup, repeated argument parsing, layout wrappers, or stale tab/stack glue in Compose apps, this is the problem Laydr is trying to make boring.
👀 1
A small route tree like this:
Copy code
src/commonMain/kotlin/routes/
  contacts/
    Route.kt
    Screen.kt
    by_id/
      Route.kt
      Screen.kt
generates typed APIs like: LaydrRoutes.Contacts LaydrRoutes.Contacts.ById So app code can navigate with generated destinations instead of raw strings:
Copy code
navigator.push(
  LaydrRoutes.Contacts.ById.destination(
    id = LaydrRoutes.Contacts.ById.id("ada"),
  ),
)
Laydr does not try to own your whole app architecture. Your app still owns Compose UI, state, DI, ViewModels, repositories, tabs, labels, chrome, auth, deep links, platform policy, and NavDisplay. It just gives those pieces stable generated route values and route-local Compose entrypoints.
a
This is really cool! o:
👍 1