← All Components
Canon
Button
Canon buttons cover the common action states without extra ceremony. Start with primary, fall back to secondary, and use ghost when the action should stay quiet.
Published April 14, 2026
What Ships Today
variant:primary,secondary,ghostsize:sm,md,lghref: render link navigation with button treatmentdisabled: preserve state and suppress interactionfullWidth: stretch to the container when layout needs it
Example
<script lang="ts">
import { Button } from '@create-something/canon';
</script>
<Button>Save changes</Button>
<Button variant="secondary">Preview</Button>
<Button variant="ghost" href="/canon/components">Browse components</Button> Selection Rules
- Use
primaryfor the one action that moves the user forward. - Use
secondarywhen the choice matters but should not dominate the screen. - Use
ghostfor supporting actions, dense toolbars, or low-emphasis UI.