Aesthetic is a theme engine for Android apps I built to solve a common problem: dynamic theming that actually works.

The Problem

Most Android apps either:

The Solution

Aesthetic provides:

Usage

// Set primary color
Aesthetic.get()
  .colorPrimary(Res.color(R.color.md_indigo_500))
  .colorAccent(Res.color(R.color.md_pink_500))
  .apply()

// Subscribe to theme changes
Aesthetic.get()
  .colorPrimary()
  .subscribe { color ->
    // Update UI
  }

Impact

Open Source

Available on GitHub under MIT license.