IndiaCN UI

List Group

A versatile component for displaying collections of content in a list format.

Introduction

List groups display a series of content items. They support active/disabled states, actionable links, flush layouts, contextual colors, and badge integration.

Installation

import { ListGroup, ListGroupItem, ListGroupAction } from '@/components/ui/list-group';

Usage

<ListGroup>
<ListGroupItem>An item</ListGroupItem>
<ListGroupItem>A second item</ListGroupItem>
<ListGroupItem>A third item</ListGroupItem>
</ListGroup>

Examples

Default

  • An item
  • A second item
  • A third item
  • A fourth item
  • And a fifth one
ListGroupDefault
import { ListGroup, ListGroupItem } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup className="w-full max-w-sm">
      <ListGroupItem>An item</ListGroupItem>
      <ListGroupItem>A second item</ListGroupItem>
      <ListGroupItem>A third item</ListGroupItem>
    </ListGroup>
  );
}

Active State

  • An active item
  • A second item
  • A third item
  • A fourth item
ListGroupActive
import { ListGroup, ListGroupItem } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup className="w-full max-w-sm">
      <ListGroupItem active>An active item</ListGroupItem>
      <ListGroupItem>A second item</ListGroupItem>
    </ListGroup>
  );
}

Disabled

  • A disabled item
  • A second item
  • A third item
ListGroupDisabled
import { ListGroup, ListGroupItem } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup className="w-full max-w-sm">
      <ListGroupItem disabled>A disabled item</ListGroupItem>
      <ListGroupItem>A second item</ListGroupItem>
    </ListGroup>
  );
}

Use ListGroupAction for clickable items.

ListGroupActionable
import { ListGroup, ListGroupAction } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup className="w-full max-w-sm">
      <ListGroupAction href="#" active>Current link</ListGroupAction>
      <ListGroupAction href="#">A second link</ListGroupAction>
      <ListGroupAction href="#" disabled>Disabled link</ListGroupAction>
    </ListGroup>
  );
}

Flush

Remove borders and rounded corners with the flush prop.

  • An item
  • A second item
  • A third item
  • A fourth item
ListGroupFlush
import { ListGroup, ListGroupItem } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup flush className="w-full max-w-sm">
      <ListGroupItem>An item</ListGroupItem>
      <ListGroupItem>A second item</ListGroupItem>
    </ListGroup>
  );
}

Contextual Colors

  • Default list group item
  • A primary list group item
  • A secondary list group item
  • A success list group item
  • A danger list group item
  • A warning list group item
ListGroupContextual
import { ListGroup, ListGroupItem } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup className="w-full max-w-sm">
      <ListGroupItem>Default</ListGroupItem>
      <ListGroupItem theme="primary">Primary</ListGroupItem>
      <ListGroupItem theme="success">Success</ListGroupItem>
      <ListGroupItem theme="danger">Danger</ListGroupItem>
      <ListGroupItem theme="warning">Warning</ListGroupItem>
    </ListGroup>
  );
}

With Badges

  • A list item14
  • A second item2
  • A third item1
ListGroupWithBadges
import { Badge } from '@/components/ui/badge';
import { ListGroup, ListGroupItem } from '@/components/ui/list-group';

export default function Component() {
  return (
    <ListGroup className="w-full max-w-sm">
      <ListGroupItem className="flex justify-between">A list item<Badge shape="pill">14</Badge></ListGroupItem>
      <ListGroupItem className="flex justify-between">A second item<Badge shape="pill">2</Badge></ListGroupItem>
    </ListGroup>
  );
}

API Reference

ListGroup

PropTypeDefaultDescription
flushbooleanfalseRemove borders and rounded corners
horizontalbooleanfalseHorizontal layout
numberedbooleanfalseNumbered list

ListGroupItem

PropTypeDefaultDescription
themedefault | primary | secondary | success | danger | warningdefaultContextual color
activebooleanfalseActive state
disabledbooleanfalseDisabled state
actionbooleanfalseEnable hover/active states

ListGroupAction

Same props as ListGroupItem but renders as an <a> element for clickable items.

On this page