arkivanov/Decompose
Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing (navigation) and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.) observed · 2026-08-28
Health v2 · maintenance only
79/100
- Activity 91
- Release rhythm 51
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: 110
- age_days: 1727
- days_rel: 171
- days_push: 56
- n_releases_24m: 6
Adoption not part of the score
2867 stars · 108 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Decompose is a Kotlin Multiplatform library for breaking code into tree-structured, lifecycle-aware business logic components (BLoCs) with routing/navigation and pluggable UI layers. It supports Jetpack/Multiplatform Compose, Android Views, SwiftUI, and Kotlin/React, keeping business logic testable and UI-agnostic.
Use cases
- share navigation and business logic across Android and iOS in Kotlin Multiplatform
- structure an app into lifecycle-aware BLoC components with parent-child trees
- swap UI frameworks (Compose, SwiftUI, React) while keeping the same logic
- keep back-stack components alive in background without UI
- preserve and restore component state across configuration changes
- write pure multiplatform unit tests for business logic
When to choose
- building a Kotlin Multiplatform app needing shared navigation and state
- you want strict separation of UI and business logic with pluggable UI
- you need lifecycle-aware components with state preservation and instance retention
When to avoid
- building a single-platform app where simpler platform-native navigation suffices
- you are not using Kotlin or Kotlin Multiplatform
- you want a batteries-included UI toolkit rather than a logic/navigation library
Facets
library · maturity active
state-management routing middleware ui-components mobile-development cross-platform web-development frontend jvm wasm kotlin-multiplatform bloc navigation jetpack-compose swiftui lifecycle-aware mvi android ios macos
2 sources
- readme: https://github.com/arkivanov/Decompose · fetched 2026-08-28 · 945eaae3bd8c
- homepage: https://arkivanov.github.io/Decompose · fetched 2026-08-29 · 0638e2723db1
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| arkivanov/Decompose | main | 79 |
For agents
markdown · JSON · MCP: product_card(name="arkivanov/Decompose")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem