Skip to content

Commit d9c184c

Browse files
committed
docs: update README.md
1 parent af704cf commit d9c184c

File tree

1 file changed

+31
-10
lines changed

1 file changed

+31
-10
lines changed

README.md

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<p align="center">
44
<a href='https://developer.android.com'><img src='http://img.shields.io/badge/platform-android-green.svg'/></a>
55
<a href="https://kotlinlang.org/docs/whatsnew1920.html"><img src = "https://shields.io/badge/kotlin-2.0.20-blue" /></a>
6-
<a href="https://developer.android.com/jetpack/compose/bom"><img src = "https://img.shields.io/badge/jetpack%20compose-2024.08.00-brightgreen" /></a>
6+
<a href="https://developer.android.com/jetpack/compose/bom"><img src = "https://img.shields.io/badge/jetpack%20compose-2024.09.00-brightgreen" /></a>
77
<a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg"/></a>
88
</p>
99

@@ -16,14 +16,14 @@
1616
## Tech Stack
1717

1818
- [Jetpack](https://developer.android.com/jetpack)
19-
- Compose - Define your UI programmatically with composable functions that describe its shape
20-
and data dependencies.
21-
- Hilt - Extend the functionality of Dagger Hilt to enable dependency injection.
22-
- Lifecycle - Build lifecycle-aware components that can adjust behavior based on the current
23-
lifecycle state
24-
- Room - Create, store, and manage persistent data backed by a SQLite database.
25-
- ViewModel - Store and manage UI-related data in a lifecycle conscious.
26-
- App Startup - initialize components at app startup.
19+
- Compose - Define your UI programmatically with composable functions that describe its shape
20+
and data dependencies.
21+
- Hilt - Extend the functionality of Dagger Hilt to enable dependency injection.
22+
- Lifecycle - Build lifecycle-aware components that can adjust behavior based on the current
23+
lifecycle state
24+
- Room - Create, store, and manage persistent data backed by a SQLite database.
25+
- ViewModel - Store and manage UI-related data in a lifecycle conscious.
26+
- App Startup - initialize components at app startup.
2727
- Clean Architecture (multi module)
2828
- MVVM pattern
2929
- Kotlin
@@ -65,5 +65,26 @@
6565
   └── setting
6666
```
6767

68-
## Module Graphs
68+
The file structure is similar to Now in Android, but to follow Clean Architecture, the domain layer
69+
does not reference the data layer.
70+
71+
## Nested NavHosts
72+
73+
```mermaid
74+
graph TD
75+
A[Main NavHost] --> B[BottomBar]
76+
A --> C[Detail]
77+
B --> D[Bottom NavHost]
78+
D --> E[List]
79+
D --> F[Favorite]
80+
D --> G[Setting]
81+
```
82+
83+
Even though using nested NavHosts makes things more complex, this approach was chosen to achieve screen transition animations similar to those between Activities.
84+
85+
(One NavHost needs to manage how to hide the bottom navigation and apply animations during screen transitions.)
86+
87+
# Module Graphs
88+
6989
![](project.dot.png)
90+

0 commit comments

Comments
 (0)