Skip to content

its-me-debk007/kotlin-android-mvvm-template

Repository files navigation

Language   Owner   License

Kotlin Android MVVM Template

A simple+lightweight template for a Jetpack Compose app with Navigation, Retrofit, Dagger-Hilt fully setup for convenience, so you can focus only on what's important!

"Every line of code should be written once, and only once." - Ron Jeffries

Features 🎨

  • Project fully in Jetpack Compose
  • Jetpack Compose Navigation
  • Retrofit (Fully setup with a working sample api call)
  • MVVM Architecture
  • Kotlin DSL
  • Chucker
  • Dependency versions managed Gradle Version Catalog
  • Dependabot (with a weekly schedule)
  • GitHub Actions for building apk and uploading artifact
  • Glide (for image loading)

Getting Started 👣

  • Click on Use this template button to create a new repository from this template
  • Few TODOs are added, such as changing package name, server base url, api endpoints, etc to guide through the project (just type TODO after pressing SHIFT key twice in Android Studio, to search for the TODOs)
  • Enable Dependabot in repo settings (for ref, a 30 sec video)
  • Grant notification permission to app in order for Chucker to work

Project Structure 🗺️📐🛠️

The project includes a single module app, with following packages:

  • di: contains Dagger-Hilt Module
  • network: includes api service containing api endpoints & type of request
  • model: contains response data class from the server
  • repository: contains repository interface & its implementation
  • presentation: signifies the presentation layer

Contributing 🤝

Join us in shaping the future of this project – your contributions are invaluable! Feel free to open a issue or submit a pull request for any bugs/improvements.

License

Distributed under the MIT License. See LICENSE file for more information.

🌟 If you find value in this project, please consider starring it! Your support keeps it thriving. 🚀