Skip to content

ListGroup

A styled list container with optional icons, active states, and suffix content.

Basic usage

Tailwind v4
vue
<ListGroup>
  <ListGroupItem>Profile</ListGroupItem>
  <ListGroupItem>Account settings</ListGroupItem>
  <ListGroupItem>Notifications</ListGroupItem>
  <ListGroupItem>Privacy</ListGroupItem>
</ListGroup>

Pass href to make items render as <a> tags.

Tailwind v4
vue
<ListGroup>
  <ListGroupItem href="#">Dashboard</ListGroupItem>
  <ListGroupItem href="#">Projects</ListGroupItem>
  <ListGroupItem href="#">Team</ListGroupItem>
  <ListGroupItem href="#" disabled>Billing (disabled)</ListGroupItem>
</ListGroup>

With active item

Use active to highlight the currently selected item.

Tailwind v4
vue
<ListGroup>
  <ListGroupItem href="#">Inbox</ListGroupItem>
  <ListGroupItem href="#" active>Sent</ListGroupItem>
  <ListGroupItem href="#">Drafts</ListGroupItem>
  <ListGroupItem href="#">Archive</ListGroupItem>
</ListGroup>

With icons

Use the #icon slot to add a leading icon to any item.

Tailwind v4
vue
<ListGroup>
  <ListGroupItem href="#">
    <template #icon><!-- home icon svg --></template>
    Home
  </ListGroupItem>
  <ListGroupItem href="#">
    <template #icon><!-- user icon svg --></template>
    Profile
  </ListGroupItem>
  <ListGroupItem href="#">
    <template #icon><!-- settings icon svg --></template>
    Settings
  </ListGroupItem>
</ListGroup>

With suffix badges

Use the #suffix slot to add a trailing element such as a count badge.

Tailwind v4
vue
<ListGroup>
  <ListGroupItem>
    Inbox
    <template #suffix><Badge variant="primary">12</Badge></template>
  </ListGroupItem>
  <ListGroupItem>
    Spam
    <template #suffix><Badge variant="danger">3</Badge></template>
  </ListGroupItem>
  <ListGroupItem>
    Archive
    <template #suffix><Badge>142</Badge></template>
  </ListGroupItem>
</ListGroup>

Flush variant

Use flush to remove the outer border radius — useful when nesting inside a Card or Panel.

Tailwind v4
vue
<ListGroup flush>
  <ListGroupItem href="#">Overview</ListGroupItem>
  <ListGroupItem href="#" active>Analytics</ListGroupItem>
  <ListGroupItem href="#">Reports</ListGroupItem>
</ListGroup>

ListGroup Props

PropTypeDefaultDescription
flushbooleanfalseRemove outer border-radius for edge-to-edge use

ListGroupItem Props

PropTypeDefaultDescription
hrefstringundefinedRenders as <a> when provided
activebooleanfalseHighlights item as currently selected
disabledbooleanfalseDims and disables interaction

Slots

ListGroupItem

SlotDescription
iconLeading icon or visual
defaultMain label or content
suffixTrailing element (badge, count, chevron, etc.)

Private — Jetpack Labs internal use only