🏃 For run the app just clone the repository and execute the app on Android Studio.
Fill out in your local.properties the variables:
APP_ID = "Your custom app id from Mongo DB"
CLIENT_ID = "Your custom cliente id from Google cloud"
📑 Requirements to install the app
- Use phones with Android Api 24+
📂 This application was developed using Kotlin and uses the following components:
- Kotlin
- Jetpack compose
- Coroutines
- Firebase storage
- Firebase authentication
- Mongo Db - Realm sync
- Clean architecture
- Modules (Domain, Data, Feature, Core)
- MVVM
- Repository pattern
- StateFlow
- Room database
- Flow
- Mutable State
- Jetpack navigation compose
- Dagger Hilt (Dependency injection)
- Coil (Load images)
🌞 Screenshots Light theme
Splash |
Sign In |
Home |
Write |
Write with Gallery |
|
|
|
|
|
Drawer |
Empty |
Sign out dialog |
Delete single dialog |
Delete all dialog |
|
|
|
|
|
Date picker dialog |
Date time dialog |
|
|
Splash |
Sign In |
Home |
Write |
Write with Gallery |
|
|
|
|
|
Drawer |
Empty |
Sign out dialog |
Delete single dialog |
Delete all dialog |
|
|
|
|
|
Date picker dialog |
Date time dialog |
|
|
The application is built using Clean Architeture pattern based on Architecture Components on Android. The application is divided into three layers:
- Domain: This layer contains the business logic of the application, here we define the data models and the use cases.
- Data: This layer contains the data layer of the application. It contains the database, network and the repository implementation.
- Presentation: This layer contains the presentation layer of the application.
MIT
Bikcodeh