Android Architecture Starter Templates (beta)

What it is: A collection of templates featuring a layered architecture ready to be used in greenfield projects or quick experiments, following the Guide to app architecture.

🙅 What it's not: These templates are not designed to be educational code samples. For that, check out Architecture Samples, the Now In Android sample or Compose samples.

Templates are compatible with the latest stable version of Android Studio.

Template Description
base Reactive architecture, Compose, database, single module
multimodule Base template + multimodule

Screenshots

Screenshot

Features

🖼️ UI

The app contains a simple Compose UI that shows a list of
saved strings and lets the user save new ones.

🧱 Build

🏠 Architecture

Usage

  1. Clone the repository, optionally choosing a branch. For example, to check out the base branch:
git clone https://github.com/android/architecture-templates.git --branch base
  1. Run the customizer script:
bash customizer.sh your.package.name DataItemType [YourAppName]
  • your.package.name is your app ID (should be lowercase)
  • DataItemType is used for the name of the screen, exposed state and data base entity (should be PascalCase).
  • Optionally, you can specify a name for your application (should be in PascalCase).

Note: the customizer script requires bash 4 and above. You might have to install a modern version on macOS:

brew install bash

License

This code is distributed under the terms of the Apache License (Version 2.0). See the license for more information.