Theming
Theming controls Tailwind class slots, variants, color mode, conditional classes, and class name resolvers. It does not replace runtime components by itself.
Reading order
Theme ConfigPresetsColor ModeClass Name SlotsMerge StrategyVariantsClass Name ConditionsClass Name ResolversAdapter ThemeCommon Mistakes
Minimal theme
TS
export const usersSchema = {
resource: "users",
theme: {
preset: "tailadmin",
colorMode: "inherit",
classNames: {
tableWrapper: "shadow-sm",
actionButton: "whitespace-nowrap"
}
},
table: {
columns: ["name", "email", "status"]
}
} as const;Runtime model
The runtime resolves theme classes in this order:
- Preset class names.
- Schema
theme.classNames. - Matching
theme.classNameWhenrules. - Registry
theme.classNameResolver. - Component-level class names passed by the renderer.
The exact merge behavior depends on theme.classNameMergeStrategy.
Available presets
| Preset | Notes |
|---|---|
default | Built-in default Tailwind preset. |
tailadmin | Built-in TailAdmin-style preset. |
shadcn | Built into core as a Shadcn direction preset. |
custom | Empty preset for fully custom slots. |