Skip to content

This is a ready-to-use template for starting a fresh Android app with all the latest goodies to help you quickly get started on a scalable and maintainable app πŸš€β€.

License

Notifications You must be signed in to change notification settings

PimDhaen/modern-android-template-quick-start

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

32 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Up-to-date Native Android Boilerplate Code

πŸš€ Quick Start

  1. Import into Android Studio, click run, and just get started building a scalable maintainable app (update to the latest Android Studio version).
  2. Rename everything prefixed with Rename (How to rename a package in Android Studio)
git clone https://github.com/pimdhaen/modern-android-template-quick-start.git

πŸ‘¨β€πŸ’Ό Architecture

Based on the Official Android Documentation:

  • Activity Structure: Single Activity Architecture
  • Design Pattern: MVVM (Model-View-ViewModel)
  • Modularization: 1 Module

πŸ“‚ Folder Structure

  • app/
    • src/
      • main/
        • java/com/renamecompanyname/renameappname
          • ui/ - Contains all UI-related stuff; Screens, Compose Navigation
          • presentation/ - ViewModels for handling UI data
          • model/ - Data models
          • data/ - Data management classes
          • di/ - Dependency Injection class modules
        • res/ - Resources like layouts, drawables, and strings
      • test/ - Unit testing files
      • androidTest/ - Android specific Instrumentation testing files

βš’οΈ Included Dependencies

  • MongoDB - NoSQL Database MongoDB, note there is a nice free tier for a MongoDB BAAS. Easily replace with Room if you prefer.
  • Hilt - Hilt Dependency Injection for a future-proof maintainable codebase. (I recommend Koin for KMP)
  • Compose Navigation - Up-to-date Official Jetpack Compose Type-Safe Navigation.
  • Ktor Android - For networking.
  • Jetpack Compose - The Official Android Declarative UI-Kit.
  • Material 3 - The latest version of Material Design.
  • Firebase Crashlytics (Planned) - For crash reporting.
  • In-App Updates - code in ui/utils/AppUpdater.kt
  • In-App Reviews - Google Play In-App Review API for collecting user rating and comment
  • KtLint - For code quality.
  • Coil - An image loading library for Android backed by Kotlin Coroutines.
  • Compose Shimmer - A shimmer loading effect for composables

🀝 Contribute to this Project

Don't hesitate!

License

This project is licensed under the MIT License. Feel free to use it for your projects.

About

This is a ready-to-use template for starting a fresh Android app with all the latest goodies to help you quickly get started on a scalable and maintainable app πŸš€β€.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages