Skip to content

Button Group

Open in GitHub

Open in Figma

A set of related buttons grouped together, with support for horizontal or vertical layouts.

---
import { Button } from '@bejamas/ui/components/button';
import { ButtonGroup } from '@bejamas/ui/components/button-group';
---
<ButtonGroup>
<Button variant="outline">Left</Button>
<Button variant="outline">Middle</Button>
<Button variant="outline">Right</Button>
</ButtonGroup>
Terminal window
bunx bejamas add button-group
---
import { ButtonGroup } from '@bejamas/ui/components/button-group';
import { Button } from '@bejamas/ui/components/button';
---
<ButtonGroup>
<Button>One</Button>
<Button>Two</Button>
<Button>Three</Button>
</ButtonGroup>
PropTypeDefault
orientation"horizontal" | "vertical""horizontal"
classstring""
---
import { MinusIcon, PlusIcon } from '@lucide/astro';
import { Button } from '@bejamas/ui/components/button';
import { ButtonGroup } from '@bejamas/ui/components/button-group';
---
<ButtonGroup orientation="vertical" aria-label="Media controls" class="h-fit">
<Button variant="outline" size="icon">
<PlusIcon />
</Button>
<Button variant="outline" size="icon">
<MinusIcon />
</Button>
</ButtonGroup>
---
import { PlusIcon } from '@lucide/astro';
import { Button } from '@bejamas/ui/components/button';
import { ButtonGroup } from '@bejamas/ui/components/button-group';
---
<div class="flex flex-col items-start gap-8">
<ButtonGroup>
<Button variant="outline" size="sm">
Small
</Button>
<Button variant="outline" size="sm">
Button
</Button>
<Button variant="outline" size="sm">
Group
</Button>
<Button variant="outline" size="icon-sm">
<PlusIcon />
</Button>
</ButtonGroup>
<ButtonGroup>
<Button variant="outline">Default</Button>
<Button variant="outline">Button</Button>
<Button variant="outline">Group</Button>
<Button variant="outline" size="icon">
<PlusIcon />
</Button>
</ButtonGroup>
<ButtonGroup>
<Button variant="outline" size="lg">
Large
</Button>
<Button variant="outline" size="lg">
Button
</Button>
<Button variant="outline" size="lg">
Group
</Button>
<Button variant="outline" size="icon-lg">
<PlusIcon />
</Button>
</ButtonGroup>
</div>