Concepts

Variants, slots, overrides, composition, layers, the cn helper, and TypeScript utilities.

Recipes are objects you pass to uv(). These pages cover each option and how the returned function behaves.

Variants

Variant axes, booleans, compound variants, and defaults.

Slots

Named parts, per-slot variants, and compound slots.

Overriding styles

Append class or className at the call site.

Composing components

Reuse recipes with extend or by concatenating results.

Layers

How to win conflicts without a merge library.

cn

Join class values. No Tailwind-merge behavior.

TypeScript

VariantProps, required variants, and slotted return types.