Please ⭐️ this repo and share it with others.
LocationReminder is an app to demonstrate the use of Google Maps API, Location, Geofencing. In LocationReminder a user can select a loction on a map and create a Reminder. This will result in a Geofence that will trigger a notification when the user gets close to the selected location.
- Kotlin
- View Model - The View Model class is designed to store and manage UI-related data in a lifecycle conscious way.
- Live Data - LiveData is an observable data holder class. Unlike a regular observable, LiveData is lifecycle-aware, meaning it respects the lifecycle of other app components, such as activities, fragments, or services.
- Data Binding - The Data Binding Library is a support library that allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically.
- Firebase - Tools to develop high-quality apps
- Firebase Authentication - Firebase Authentication aims to make building secure authentication systems easy, while improving the sign-in and onboarding experience for end users.
- Navigation with the SafeArgs plugin for parameter passing between fragments
- Repository Pattern
- Koin Lightweight dependency injection for kotlin
- Google Maps For maps and places
- Local Notification For remember the memory
Testing
- Mockito Mocking framework
- Espresso Android UI testing framework
- Hamcrest Library for testing
- Robolectric Unit testing framework for Android