A pragmatic navigation library for Jetpack Compose

Voyager is a lightweight and complete navigation library built for, and seamlessly integrated with, Jetpack Compose.

Create scalable Single-Activity apps powered by a pragmatic API.

class HomeScreenModel : ScreenModel {
    // ...
}

class HomeScreen : Screen {

    @Composable
    override fun Content() {
        val screenModel = rememberScreenModel<HomeScreenModel>()
        // ...
    }
}

class SingleActivity : ComponentActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        setContent {
            Navigator(HomeScreen())
        }
    }
}

Turn on the Warp Drive and enjoy the trek ?

Documentation

See the project website for documentation and APIs.

Features

Roadmap

Samples

Stack API Android ViewModel ScreenModel Basic nav.
BottomSheet nav. Tab nav. Multi-module nav. Nested nav.

https://github.com/adrielcafe/voyager