Browse Source

Update README

pull/10/head
Arkadii Ivanov 4 years ago
parent
commit
7f4585e500
  1. 30
      examples/todoapp/README.md

30
examples/todoapp/README.md

@ -1,4 +1,28 @@
An example of todo app based on Jetpack Compose UI library (desktop and android) and Decompose navigation library. An example of Kotlin Multiplatform todo app with shared Jetpack Compose UI.
To run desktop application execute in terminal: ./gradlew desktop:run Supported targets: `Android` and `JVM`.
To run android application you will need to open project in Intellij IDEA or Android Studio and run "android" configuration
Libraries used:
- Jetpack Compose - shared UI
- [Decompose](https://github.com/arkivanov/Decompose) - navigation and lifecycle
- [MVIKotlin](https://github.com/arkivanov/MVIKotlin) - presentation and business logic
- [Reaktive](https://github.com/badoo/Reaktive) - background processing and data transformation
- [SQLDelight](https://github.com/cashapp/sqldelight) - data storage
There are multiple common modules:
- `utils` - just some useful helpers
- `database` - SQLDelight database definition
- `main` - displays a list of todo items and a text field
- `edit` - accepts an item id and allows editing
- `root` - navigates between `main` and `edit` screens
The `root` module is integrated into both Android and Desktop apps.
Features:
- 99% of the code is shared: data, business logic, presentation, navigation and UI
- View state is preserved when navigating between screens, Android configuration change, etc.
- Model-View-Intent (aka MVI) architectural pattern
To run the desktop application execute the following command: `./gradlew desktop:run`.
To run the Android application you will need to open the project in Intellij IDEA or Android Studio and run "android" configuration.

Loading…
Cancel
Save