Tabs Accordion

PreviousNext

A tabs-styled accordion component

Docs
shadcnui-blockscomponent

Preview

Loading preview…
components/customized/accordion/accordion-06.tsx
import {
  Accordion,
  AccordionContent,
  AccordionItem,
  AccordionTrigger,
} from "@/registry/ui/accordion";

const items = [
  {
    title: "Is it accessible?",
    content: "Yes. It adheres to the WAI-ARIA design pattern.",
  },
  {
    title: "Is it styled?",
    content:
      "Yes. It comes with default styles that matches the other components' aesthetic.",
  },
  {
    title: "Is it animated?",
    content:
      "Yes. It's animated by default, but you can disable it if you prefer.",
  },
];

export default function AccordionTabsDemo() {
  return (
    <Accordion
      type="single"
      collapsible
      defaultValue="item-0"
      className="max-w-lg my-4 w-full space-y-2"
    >
      {items.map(({ title, content }, index) => (
        <AccordionItem
          key={index}
          value={`item-${index}`}
          className="border-none rounded-md px-4 data-[state=open]:bg-secondary"
        >
          <AccordionTrigger className="data-[state=closed]:py-2">
            {title}
          </AccordionTrigger>
          <AccordionContent>{content}</AccordionContent>
        </AccordionItem>
      ))}
    </Accordion>
  );
}

Installation

npx shadcn@latest add @shadcnui-blocks/accordion-06

Usage

import { Accordion06 } from "@/components/accordion-06"
<Accordion06 />