Skip to content

Getting Started Overview

Overview

FormaUI is an opinionated, Material You–native component library for Compose Multiplatform. It gives you 40 production-ready components that look great with zero styling work— “Material 3, with better defaults.”

Batteries included, not headless

Headless component libraries hand you behavior — focus management, keyboard handling, state — and leave the rest to you: pick a design system, define tokens, style every variant yourself. That’s the right trade for teams building their own design system. It’s the wrong one for teams that just want to ship.

FormaUI takes the opposite bet. Every component ships with a distinctive brand theme already applied — Public Sans set at an editorial display scale, a warm cream/coral palette, spacing locked to a 4dp grid — and every one of those decisions is still yours to override: modifier, colors, and shape are exposed on everything.

What you get

M3

Better defaults

A distinctive brand theme out of the box — Public Sans with an editorial display scale and a warm cream/coral palette — instead of the stock Material look.

4dp

Grid-aligned spacing

Every spacing token (xs/sm/md/lg/xl) snaps to a consistent 4dp grid, so layouts stay aligned without hand-tuned padding.

48dp

Accessible by default

48dp minimum touch targets and semantics roles are enforced on every interactive component, not left as an exercise for the caller.

100%

Fully overridable

modifier, colors, and shape are exposed on everything. Reach for the brand defaults, or override down to the pixel.

Live previews, not screenshots

Every component doc page embeds the real Compose component, compiled to WebAssembly and rendered in an iframe — not a screenshot. Flip through a component’s variants and toggle its in-canvas light/dark theme, and you’re looking at the exact same code that runs on Android, iOS, and desktop.

Open a live preview

One dependency

FormaUI ships as a single Maven artifact — io.github.devsnackio:components:0.1.0-beta04. Wrap your app once in FormaTheme, and every component you drop in afterward already matches. Licensed Apache 2.0.