
Button
Use buttons for primary, secondary, and outline actions while leaving visual weight and sizing to the selected renderer.
Live Demo
Component: button
Preview + Code
Code
int count = 0;

ArcaneBox(
  style: const ArcaneStyleData(
    display: Display.flex,
    gap: Gap.sm,
    flexWrap: FlexWrap.wrap,
  ),
  children: [
    Button.primary(label: 'Clicked $count', onPressed: increment),
    Button.secondary(label: 'Secondary', onPressed: () {}),
    Button.outline(label: 'Outline', onPressed: () {}),
  ],
)

Button#

Use buttons for primary, secondary, and outline actions while leaving visual weight and sizing to the selected renderer.

The live preview and code sample above use the neutral package:arcane_jaspr/arcane_jaspr.dart API. The selected stylesheet owns spacing, density, radius, color, and interaction styling, so the same app code can render differently under Shadcn or Neon.

Source: lib/component/input/button.dart

See the Component Catalog for the full exported surface and source mapping.