l2hyunwoo/voyager — explained in plain English
Analysis updated 2026-08-04 · repo last pushed 2024-02-23
Build a login-to-home navigation flow without writing navigation boilerplate.
Create a tab-based app interface similar to the YouTube app with multiple sections.
Manage nested navigation stacks for complex multi-step user flows in your app.
Share navigation logic across Android, iOS, Desktop, and Web from a single codebase.
| l2hyunwoo/voyager | 00kaku/gallery-slider-block | 04amanrajj/netwatch | |
|---|---|---|---|
| Stars | — | — | 0 |
| Language | — | JavaScript | Rust |
| Last pushed | 2024-02-23 | 2021-05-19 | — |
| Maintenance | Dormant | Dormant | — |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 2/5 | 2/5 | 3/5 |
| Audience | developer | general | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Requires familiarity with Jetpack Compose and setting up a Compose project with Gradle dependencies.
Voyager is a navigation library for Jetpack Compose, the modern toolkit for building Android (and increasingly multiplatform) app interfaces. In plain terms, it handles the "screen switching" in your app, moving from a login page to a home page, opening a bottom sheet, managing tabs like the YouTube app, or keeping track of nested navigation when you have complex flows. Instead of wrestling with navigation boilerplate, you define each screen as a simple object and let a Navigator component handle the routing. The way it works is straightforward for developers: each screen in your app is a class that implements a Screen interface, where you place your UI code. You kick things off by passing your starting screen to a Navigator. From there, the library manages a stack of screens, so you can push new ones on top, pop back, or jump between tabs, all while preserving state when things like screen rotations or activity recreations would normally wipe your data. This project is aimed at Android and Kotlin multiplatform developers building apps with Compose. If you are a solo founder or small team shipping an app and want a cleaner alternative to Google's default navigation library, this is a strong pick. It supports Android, iOS, Desktop, and Web, making it practical for teams targeting more than one platform from a shared codebase. What makes Voyager notable is its breadth of integrations and pragmatic design philosophy. It includes its own lightweight ScreenModel (similar to Android's ViewModel) for managing state, and it plays nicely with popular dependency injection frameworks like Koin and Hilt. It also covers concerns that go beyond basic routing: built-in screen transitions, lifecycle callbacks, back-press handling, deep linking, and state restoration. The README points to a dedicated documentation site for full API details, and includes sample apps with animated GIFs demonstrating each navigation pattern in practice.
Voyager is a navigation library for Jetpack Compose that handles screen switching in Android and multiplatform apps. Define screens as simple objects and let the library manage routing, tabs, and state preservation automatically.
Dormant — no commits in 2+ years (last push 2024-02-23).
The README does not mention a specific license, so the licensing terms are unknown.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.