This is the repository for the Quottie: Quote of the Day Kotlin Multiplatform app. It is always updated and is under development.
Quottie: Quote of the Day is a mobile application that helps to find inspiring quotes & famous authors in one app. Bookmark your favorites easily!
The Quottie: Your Personal Quote Companion app is built using Kotlin Multiplatform, specifically with Compose Multiplatform, and is under constant development. The Android part is available on the Play Store. The iOS part is in the publishing stage. We are actively writing tests, updating libraries, and implementing new solutions. Currently, we are focused on enhancing the appโs stability and performance through comprehensive testing, including screenshot testing and benchmarking.
In the near future, we plan to expand the appโs capabilities and features even further to provide users with an enriched experience.
Quottie: Quote of the Day is your ultimate source for daily inspiration! ๐ Dive into a curated collection of uplifting quotes that motivate and encourage you every day. Whether youโre looking for wisdom from famous authors or a quick boost of positivity, Quottie has you covered. All rights to the application belong to NGApps Dev.
๐ Quote of the Day Start each day with inspiration! Quottie delivers a handpicked โQuote of the Day,โ setting the tone for positivity and reflection. Let these powerful words guide and uplift you throughout the day.
๐ Endless Inspiration with Random Quotes In need of a quick boost? The Random Quotes feature offers endless scrolling, so you can keep discovering new and inspiring quotes at your own pace. With every scroll, youโll uncover fresh insights and motivation.
๐ค Explore Iconic Authors Quottie goes beyond quotes. Discover more about the authors behind them! Browse through the profiles of famous authors, learn about their lives, and dive into their unique perspectives on life, success, and happiness.
๐ Find Exactly What Youโre Looking For Easily search for quotes on specific topics, authors, or keywords. Whether itโs wisdom about life, success, or happiness, Quottie makes finding the perfect quote simple and quick!
๐ Bookmark Your Favorites Build a personalized collection of quotes and authors that resonate with you. With bookmarks, youโll always have easy access to the quotes you love most.
Types: KMP - multiplatform library used from shared code (commonMain, Android and iOS), Android - Android-only library (androidMain / androidApp), Gradle plugin - build tooling, Test - test-only dependency.
| Library | Version | Type | Used for | |
|---|---|---|---|---|
| ๐งฌ | Kotlin Multiplatform | 2.4.21 | Gradle plugin | sharing code between Android and iOS |
| ๐งฉ | Compose Multiplatform | 1.12.1 | KMP | shared UI |
| ๐ | Material 3 Adaptive | 1.3.0 | KMP | adaptive layouts and navigation suite |
| ๐งญ | Navigation Compose | 2.9.2 | KMP | navigation |
| โป๏ธ | Lifecycle ViewModel | 2.11.0 | KMP | shared ViewModels |
| ๐ | Ktor | 3.6.0 | KMP | networking (OkHttp engine on Android, Darwin on iOS) |
| ๐ฆ | Kotlinx Serialization | 1.11.0 | KMP | content negotiation |
| โก | Kotlinx Coroutines | 1.11.0 | KMP | asynchronous work |
| ๐ | Kotlinx Datetime | 0.8.0 | KMP | dates and time |
| ๐ | Koin | 4.2.2 | KMP | dependency injection |
| ๐๏ธ | DataStore + Wire | 1.2.1 / 7.1.0 | KMP | storing user preferences in Protobuf |
| ๐ข๏ธ | Room + SQLite Bundled | 2.8.5 / 2.7.1 | KMP | databasing |
| ๐ | Paging (Cash App) | 3.3.0-alpha02-0.5.1 | KMP | paginated quote and author lists |
| ๐๏ธ | Coil 3 | 3.6.3 | KMP | loading images |
| ๐ | moko-resources | 0.26.4 | KMP | shared strings, images, fonts and files |
| ๐๏ธ | Kottie | 2.3.0 | KMP | Lottie animations |
| ๐ช | Compose WebView Multiplatform | 2.0.3 | KMP | privacy policy and terms screens |
| ๐งพ | Napier | 2.7.1 | KMP | logging |
| ๐ | Core Splashscreen | 1.2.0 | Android | splash screen |
| โฌ๏ธ | Play In-App Updates / In-App Review | 2.1.0 / 2.0.2 | Android | app updates and reviews |
| ๐ ๏ธ | Android Gradle Plugin | 9.4.1 | Gradle plugin | Android build (com.android.kotlin.multiplatform.library for shared modules) |
| โ๏ธ | KSP | 2.3.12 | Gradle plugin | Room and Koin code generation |
| ๐ | BuildKonfig | 0.23.0 | Gradle plugin | build config for shared code (API base URLs, ad ids) |
| ๐ | Detekt / Kover | 1.23.8 / 0.9.11 | Gradle plugin | static analysis and code coverage |
| ๐งช | Kotlin Test, Turbine, Ktor MockEngine, Okio FakeFileSystem | Test | unit tests | |
| ๐ฑ | AndroidX Test / Compose UI Test | 1.7.0 / 1.12.1 | Test | instrumented tests |
The full list of versions is in gradle/libs.versions.toml. The project builds with Gradle 9.8.1 and JDK 17+.
- ๐ Firebase Analytics - for analytics logging (Android)
- ๐ Firebase Crashlytics - for crashlytics logging (Android)
- ๐ Google UMP - for showing consent screen (Android)
- ๐ข Google AdMob - for showing ads (Android)
- ๐ฌ Quotable - quotes and authors API, served from a Cloudflare Workers mirror
- ๐ Wikipedia API - for author details
- ๐ GitHub API - for the developer profile on the About screen
The Quottie: Your Personal Quote Companion app follows the official architecture guidance which is described in detail in the Now in Android app architecture learning journey, adapted to Kotlin Multiplatform.
The project uses convention plugins in build-logic and a modularized structure:
- ๐ค
androidApp- the Android application:MainActivity,Application, manifest, Firebase setup - ๐ฑ
composeApp- the shared application shell: root composable, navigation host, Koin modules, and the iOS framework - ๐
iosApp- the iOS application (Xcode project) that hosts the shared Compose UI - ๐งฑ
core:*- shared KMP modules: analytics, common, data, database, datastore, design system, domain, model, network, UI components - ๐งฉ
feature:*- one KMP module per feature, with its UI, ViewModel and state incommonMain - ๐
resources- shared strings, images and fonts
Platform-specific code, such as ads, analytics and sharing, lives in androidMain and iosMain behind expect/actual declarations.
./gradlew testAndroidHostTest- unit tests of the shared modules (commonTest), run on the JVM./gradlew connectedAndroidDeviceTest- instrumented tests (androidDeviceTest): Room DAOs, DataStore, ViewModels and Compose UI, run on a device or emulator
The app was designed using Material 3 guidelines.
The screens and UI elements are built entirely with Compose Multiplatform, so the same UI runs on Android and iOS.
The app has theme modes, light and dark.
This application was developed by NGApps Dev. I am continuously working on improving the functionality, optimizing the app's performance, and keeping the libraries up-to-date to ensure its stability and relevance.
You can reach me at ngapps.developer@gmail.com, and feel free to follow my projects on GitHub.
I welcome contributions from the community! Whether it's suggestions, bug fixes, or new features, feel free to open an issue or submit a pull request. Thank you for using the app and for your support!




