Skip to content
This repository was archived by the owner on Jun 10, 2026. It is now read-only.

Commit f3509a6

Browse files
Copilothoc081098
andauthored
docs: final decision — solivagant and kmp-viewmodel not maintained (#527)
* docs: add retrospective, architecture, migration, and maintenance documentation * docs: update to reflect final decision to not maintain solivagant and kmp-viewmodel * Apply suggestions from code review Co-authored-by: Petrus Nguyễn Thái Học <hoc081098@gmail.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Petrus Nguyễn Thái Học <hoc081098@gmail.com>
1 parent ff820e9 commit f3509a6

11 files changed

Lines changed: 2464 additions & 5 deletions

README.md

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# solivagant 🔆
22

3-
## [🟢 ACTIVE] 🔆 Compose Multiplatform Navigation library - 🌸 Pragmatic, type safety navigation for Compose Multiplatform. Based on [Freeletics Khonshu Navigation](https://freeletics.github.io/khonshu/navigation/get-started/). ♥️ ViewModel, SavedStateHandle, Lifecycle, Multi-Backstacks, Transitions, Back-press handling, and more...
3+
## [🔴 NOT MAINTAINED] 🔆 Compose Multiplatform Navigation library - 🌸 Pragmatic, type safety navigation for Compose Multiplatform. Based on [Freeletics Khonshu Navigation](https://freeletics.github.io/khonshu/navigation/get-started/). ♥️ ViewModel, SavedStateHandle, Lifecycle, Multi-Backstacks, Transitions, Back-press handling, and more...
44

55
[![maven-central](https://img.shields.io/maven-central/v/io.github.hoc081098/solivagant-navigation)](https://search.maven.org/search?q=g:io.github.hoc081098%20solivagant-navigation)
66
[<img src="https://img.shields.io/nexus/snapshots/https/s01.oss.sonatype.org/io.github.hoc081098/solivagant-navigation.svg?label=latest%20snapshot"/>](https://s01.oss.sonatype.org/content/repositories/snapshots/io/github/hoc081098/solivagant-navigation)
@@ -60,8 +60,18 @@
6060
<img src="https://github.com/hoc081098/solivagant/raw/master/logo.png" width="400">
6161
</p>
6262

63-
> [!NOTE]
64-
> This library is still in alpha, so the API may change in the future.
63+
> [!WARNING]
64+
> **This library is no longer maintained.**
65+
>
66+
> Development has stopped. No new features, bug fixes, or dependency updates will be published.
67+
> The repository is preserved as a reference and for existing users who wish to fork or study the code.
68+
>
69+
> **For new projects**, use [Navigation 3](https://developer.android.com/guide/navigation/navigation-3)
70+
> (Android/Compose) or the official [JetBrains Compose Multiplatform](https://www.jetbrains.com/compose-multiplatform/)
71+
> navigation solution when it becomes available on all platforms.
72+
>
73+
> The architectural patterns and design decisions from this library are documented in
74+
> [`docs/`](docs/README.md) and are worth reading regardless of which navigation library you use.
6575
6676
## Credits
6777

@@ -434,9 +444,12 @@ navigator.navigateBackTo<MainScreenRoute>(inclusive = false)
434444
- [x] Support transition when navigating (since [0.1.0](https://github.com/hoc081098/solivagant/releases/tag/0.1.0)).
435445
- [x] Support more targets such as wasm, watchOS, tvOS, etc... (since [0.2.0](https://github.com/hoc081098/solivagant/releases/tag/0.2.0)).
436446
437-
## 🟢 Active status
447+
## 🔴 Not maintained
448+
449+
This library is **no longer maintained**. No new releases, bug fixes, or dependency updates are planned.
438450
439-
This library is actively maintained and updated with new features and bug fixes.
451+
The repository remains public for reference. See [`docs/`](docs/README.md) for a full retrospective,
452+
architectural patterns worth keeping, and migration guidance toward modern official APIs.
440453
441454
## License
442455

docs/README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# solivagant & kmp-viewmodel — Documentation Index
2+
3+
This directory contains architectural retrospectives, design pattern documentation, migration guides,
4+
and maintenance recommendations for the **solivagant** and **kmp-viewmodel** libraries.
5+
6+
These documents were written as of mid-2025, when JetBrains Compose Multiplatform, AndroidX Lifecycle
7+
multiplatform, and Navigation 3 had matured enough to cover most of the original use-cases these
8+
libraries were created to address.
9+
10+
---
11+
12+
## Contents
13+
14+
### `/legacy` — Why these libraries existed and what they contributed
15+
16+
| File | Description |
17+
|------|-------------|
18+
| [why-these-libraries-existed.md](legacy/why-these-libraries-existed.md) | Historical context: the 2022–2023 KMP ecosystem gap these libraries filled |
19+
| [solivagant-retrospective.md](legacy/solivagant-retrospective.md) | Full audit of the solivagant navigation library |
20+
| [kmp-viewmodel-retrospective.md](legacy/kmp-viewmodel-retrospective.md) | Full audit of the kmp-viewmodel library |
21+
22+
### `/architecture` — Design patterns worth preserving
23+
24+
| File | Description |
25+
|------|-------------|
26+
| [navigation-patterns.md](architecture/navigation-patterns.md) | Type-safe routing, NavRoot/NavRoute split, multi-backstack ownership, overlay destinations |
27+
| [viewmodel-patterns.md](architecture/viewmodel-patterns.md) | Multiplatform ViewModel lifecycle, `viewModelScope`, `Closeable` chain, Swift wrappers |
28+
| [state-preservation.md](architecture/state-preservation.md) | `SavedStateHandle` multiplatform, `SaveableStateHolder`, `SavedStateSupport` design |
29+
30+
### `/migration` — Guidance for users moving to official APIs
31+
32+
| File | Description |
33+
|------|-------------|
34+
| [modern-compose-multiplatform.md](migration/modern-compose-multiplatform.md) | Mapping solivagant + kmp-viewmodel concepts to modern official APIs |
35+
36+
### `/maintenance` — Repository status decisions
37+
38+
| File | Description |
39+
|------|-------------|
40+
| [repository-status.md](maintenance/repository-status.md) | Recommendation: keep, deprecate, archive, or reframe each repository |
41+
42+
### `/ideas` — Extracted patterns
43+
44+
| File | Description |
45+
|------|-------------|
46+
| [extracted-patterns.md](ideas/extracted-patterns.md) | Catalogue of valuable ideas, patterns, and techniques from both libraries |
47+
48+
---
49+
50+
## Quick summary
51+
52+
| Library | Final status | Maven artifacts |
53+
|---------|-------------|-----------------|
54+
| **solivagant** | **Not maintained. Repository preserved for reference.** | Last published: 0.5.0. No further releases planned. |
55+
| **kmp-viewmodel** | **Not maintained. Repository preserved for reference.** | Core ViewModel superseded by JetBrains `lifecycle-viewmodel`. `savedstate` module has no official equivalent but is no longer updated. |
56+
57+
The architectural decisions, design patterns, and concepts from both libraries are documented in
58+
this directory and remain valuable reading regardless of which navigation library you use.
59+
60+
See [maintenance/repository-status.md](maintenance/repository-status.md) for the full engineering
61+
trade-off analysis and the reasoning behind this decision.

0 commit comments

Comments
 (0)