Core Components
Number Effects
Interactive Elements
Advanced Effects
Radix UI Components
- Accordion
- Alert
- Alert Dialog
- Aspect Ratio
- Avatar
- Badge
- Breadcrumb
- Button
- Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Collapsible
- Combobox
- Command
- Context Menu
- Data Table
- Date Picker
- Dialog
- Direction
- Drawer
- Dropdown Menu
- Empty
- Field
- Hover Card
- Input
- Input Group
- Input OTP
- Item
- Kbd
- Label
- Menubar
- Native Select
- Navigation Menu
- Pagination
- Popover
- Progress
- Radio Group
- Resizable
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner
- Spinner
- Switch
- Table
- Tabs
- Textarea
- Toast
- Toggle
- Toggle Group
- Tooltip
- Typography
Base UI Components
- Accordion
- Alert
- Alert Dialog
- Aspect Ratio
- Avatar
- Badge
- Breadcrumb
- Button
- Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Collapsible
- Combobox
- Command
- Context Menu
- Data Table
- Date Picker
- Dialog
- Direction
- Drawer
- Dropdown Menu
- Empty
- Field
- Hover Card
- Input
- Input Group
- Input OTP
- Item
- Kbd
- Label
- Menubar
- Native Select
- Navigation Menu
- Pagination
- Popover
- Progress
- Radio Group
- Resizable
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner
- Spinner
- Switch
- Table
- Tabs
- Textarea
- Toast
- Toggle
- Toggle Group
- Tooltip
- Typography
import { Bold, Italic, Underline } from "lucide-react"
import {Installation#
pnpm dlx shadcn@latest add toggle-group
Usage#
import { ToggleGroup, ToggleGroupItem } from "@/components/ui/toggle-group"<ToggleGroup type="single">
<ToggleGroupItem value="a">A</ToggleGroupItem>
<ToggleGroupItem value="b">B</ToggleGroupItem>
<ToggleGroupItem value="c">C</ToggleGroupItem>
</ToggleGroup>Composition#
Use the following composition to build a ToggleGroup:
ToggleGroup
├── ToggleGroupItem
└── ToggleGroupItemExamples#
Outline#
Use variant="outline" for an outline style.
import {
ToggleGroup,
ToggleGroupItem,Size#
Use the size prop to change the size of the toggle group.
import {
ToggleGroup,
ToggleGroupItem,Spacing#
Use spacing to add spacing between toggle group items.
import {
ToggleGroup,
ToggleGroupItem,Vertical#
Use orientation="vertical" for vertical toggle groups.
import { BoldIcon, ItalicIcon, UnderlineIcon } from "lucide-react"
import {Disabled#
import { Bold, Italic, Underline } from "lucide-react"
import {Custom#
A custom toggle group example.
Use font-normal to set the font weight.
"use client"
import * as React from "react"RTL#
To enable RTL support in DWL Components, see the RTL configuration guide.
"use client"
import {API Reference#
See the Radix Toggle Group documentation.
Changelog#
2026-05-17 Default Spacing#
Changed the default spacing from 0 to 2 so toggle groups render with space between items by default. Use spacing={0} for connected items.
Build with DWL Components
Use the copied registry, charts, blocks, and create tools in one place.
Start from the DWL Components create flow and customize from there.
Open DWL Components Create