Skip to content
/ AndroidSkeleton Public template

Template for starting a new Android project

Notifications You must be signed in to change notification settings

raudonikis/AndroidSkeleton

Repository files navigation

AndroidSkeleton

Min API Platform

An android template for creating a new project with most set up already done.

Tech stack

  • Kotlin - First class and official programming language for Android development.
  • Coroutines and Flow - Official Kotlin's tooling for performing asynchronous work.
  • MVVM Architecture - Official recommended architecture for building robust, production-quality apps.
  • Android Jetpack - A suite of libraries to help developers build state-of-the-art applications.
    • Navigation - Navigation is a framework for navigating between screens within an Android application.
    • ViewModel - The ViewModel is designed to store and manage UI-related data in a lifecycle conscious way.
    • Room - The Room library provides an abstraction layer over SQLite to allow for more robust database access.
    • Dagger Hilt - Hilt is a dependency injection library for Android.
    • Compose - Jetpack Compose is Android’s recommended modern toolkit for building native UI. It simplifies and accelerates UI development on Android. Quickly bring your app to life with less code, powerful tools, and intuitive Kotlin APIs.
  • Retrofit - A library for building REST API clients.
  • Moshi - A modern JSON library for Android and Java. It makes it easy to parse JSON into Java objects.
  • Timber - A logger with a small, extensible API which provides utility on top of Android's normal Log class.
  • Version catalogs - Gradle version catalogs enable you to add and maintain dependencies and plugins in a scalable way. Using Gradle version catalogs makes managing dependencies and plugins easier when you have multiple modules.

Project structure

project structure

  • app - main app module
  • features - package for feature modules
  • libraries - package for other modules (not feature related)
    • common - common logic between all or most modules
    • common-ui - common UI logic
    • data - database, entities
    • data-domain - domain models, mappers
    • navigation - navigation handling logic
    • network - api interfaces, response models

About

Template for starting a new Android project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages