Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit

* Add packaging info to architecture templates

* Update screenshot

* Rename packaging extension to .yaml instead of .yml

Git stats


Failed to load latest commit information.

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




🖼️ UI

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

🧱 Build

🏠 Architecture


  1. Clone the repository, optionally choosing a branch. For example, to check out the base branch:
git clone --branch base
  1. Run the customizer script:
bash DataItemType [YourAppName]
  • 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


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