Skip to content

android/architecture-templates

main
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?
Code

Latest commit

* Add packaging info to architecture templates

* Update screenshot

* Rename packaging extension to .yaml instead of .yml
eb8888b

Git stats

Files

Permalink
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

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.