HolidayChecker is Android app, aims to help people in long-distance relationships spend time together.
For this, tan app shows couples when they can meet on public holidays.
Here are the prerequisites for running the sdk and example app in development and production:
- Install Android Studio 4.1+.
- JDK: A copy of the latest OpenJDK comes bundled with Android Studio. Separate JDK can be used as well. See documentation for more details.
This repo contains app and buildScr projects:
- app - Android app, which loads reviews as user scrolls and display review details on click.
- buildScr - centralizes dependencies management of libs and plugins, which are used by the app.
Key facts about project set-up and architecture:
- Gradle build is written in Kotlin DSL.
- Project follows Clean Architecture principles: e.g. business logic is separated from implementation details of network or db layer, etc.
- Project uses MVVM pattern in order to separate UI logic from app business logic: e.g. UI layer (Fragment) observes and renders data from view model using Kotlin Flow and Jetpack's ViewModel.
- Networking is implemented using Retrofit.
- Dependency Injection is implemented using Hilt.
- Asynchronous operations are implemented off UI thread using Kotlin Coroutines.
- In-app navigation to be implemented using Navigation component.
Unit tests are implemented using: