page ThemesGuide { layout = "showcase" seo { title = "Themes" description = "Theme presets control radius, surface treatment, borders, shadows, and motion." } view {
Customization

Themes

Theme presets control radius, surface treatment, borders, shadows, and motion.

Configure and use it

This is the smallest useful starting point. Copy it into the indicated application file or run it from the project root, then adjust the documented values for your product.

theme: {
  default: "light",
  palette: "violet",
  accent: "violet",
}

What changes after this

Only the selected theme is active while semantic tokens keep every component visually consistent.

Theme anatomy

A theme combines mode, palette, accent, radius, elevation, borders, motion, and typography. Components consume semantic tokens rather than palette-specific values.

Select only what ships

Production pages link the active palette/accent sheet. Keep alternative themes available for user selection without placing the complete matrix on every page.

Customize globally

Override tokens at the application boundary for brand-wide changes. Keep component-local adjustments in the owning page or component.

Validate the system

Use the design panel to compare presets, then verify the production build's theme link and CSS report.

Verify the result

Type-check the application, inspect the resolved package and styles, and build the production artifact. Test the page at a narrow viewport, with keyboard navigation, and in both color modes before shipping.

bunx wrnexus typecheck .
bunx wrnexus inspect packages .
bunx wrnexus inspect styles .
bunx wrnexus build .

Expected result

The commands exit successfully, the build reports the installed UI components and active theme, and the rendered page remains usable before and after hydration.

} }