Code
1Coin – Simple money manager

Tech stack
- UI
- Compose Multiplatform – UI (Android + Desktop)
- LGoodDatePicker – DatePicker on Swing (Desktop)
- Odyssey – Navigation
- Koalaplot – Charts
- Common
- KViewModel – Shared ViewModel
- Firebase – Crashlytics
- UUID – UUID generation
- Kotlinx DateTime – Date and Time
- Data
- Ktor – Network communication
- SqlDelight – SQLite database
- Kotlinx Serialization – Serialization
- Json – Java JSON objects (for storing data in Desktop)
- Settings – Key-value persistent storage
- Paging – Paging for multiplatform
- Loggers
- Dependency Injection
- Koin – Dependency injection
- Clean code analyzers
- LeakCanary – Memory leaks analysis (Android)
- Detekt – Static code analysis
- Analytics
- Amplitude – General analytics
How to build
- Android
- Sync gradle
- Run Android configuration project
- Desktop
- Sync gradle
- Launch ‘main()’ function in ‘desktop/src/jvmMain/kotlin/com/finance_tracker/finance_tracker/main.kt’
Download
- Windows: –
- MacOS: 1Coin (1.0.1-beta)
- Linux: –
- Android: 1Coin (PlayMarket)
- iOS: In developing
