Skip to content

Latest commit

 

History

History
57 lines (48 loc) · 3.11 KB

README.md

File metadata and controls

57 lines (48 loc) · 3.11 KB

Drovox

Website

Platform License API Build Status

Drovox lets you see your location, add, remove and search markers with a daily 9 AM reminder to rise and shine!

Preview

Markers Add Marker Search Remove Notify
img one img three img four img five img six

Configurations

  • Minimum SDK level 26
  • Compile SDK version 34
  • Target SDK version 34
  • Version code 1
  • Version name "1.0"

Tech stack & libraries

  • Kotlin, Coroutines + Flow for asynchronous operations and background processes.
  • Jetpack
    • Lifecycle - Observe Android lifecycles and handle UI states upon the lifecycle changes.
    • ViewModel - Manages UI-related data holder and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
    • Room - Constructs Database by providing an abstraction layer over SQLite to allow fluent database access.
    • DataStore - Data storage solution for key-value pairs or typed objects with protocol buffers.
    • Hilt - Manage dependency injection.
  • Architecture
    • MVVM (Model - View - ViewModel) + MVI (Model - View - Intent) Architecture
    • Repository Pattern
  • Network & HTTP Connectivity
  • Logger & Debugging Tools
    • Timber - A logger with a small, extensible API.
  • Design Framework
    • Material-Components - Material design components for building ripple animation, and CardView.
  • UI Framework
  • Google Map - Locations

App Architecture

This app is based on an MVVM + MVI hybrid architecture and the Repository pattern. The app is also modularized so that there is the app module, the core modules and the feature modules. Stateflow is emitted from the view model to the views that observe these changes and react accordingly in a compose fashion.

License

This source code is distributed under the terms of the Apache License (Version 2.0)