Action@axonyx/react

Button

Buttons trigger actions, submit forms, open dialogs, and move users through product workflows. Axonyx buttons support emphasis, forged surfaces, and reinforced borders without leaving the shared CSS contract.

Server-safe
Button is exported from @axonyx/react and can be used in Next.js Server Components.

Overview

Semantic by default

Renders a native button and accepts regular React button props.

Design-system contract

Props map to data-variant, data-surface, and data-border.

Text button

Read docs

Color

Sizes

Buttons with icons and label

Icon button

Loading

Badge

42

File upload

Surfaces

Props

PropTypeDefaultDescription
variant"default" | "primary" | "ghost" | "accent" | "outline""default"Controls visual emphasis.
surface"default" | "forged" | "brushed" | "inset""default"Applies Foundry surface treatment.
border"forged"undefinedApplies reinforced/riveted border styling.
size"sm" | "md" | "lg""md"Controls button sizing for compact or prominent actions.
loadingbooleanfalseShows a built-in spinner and disables interaction while busy.
startIconReactNodeundefinedRenders a leading icon with built-in spacing.
endIconReactNodeundefinedRenders a trailing icon with built-in spacing.
disabledbooleanfalseUses native disabled button behavior.

API

See the full API reference for imports, props, CSS contracts, and Foundry data attributes.