Separator

Visually or semantically separates content.

Radix Primitives

An open-source UI component library.

Blog
Docs
Source

Installation

Install the following dependencies:

pnpm add @radix-ui/react-separator

Copy and paste the following code into your project.

"use client";

import * as React from "react";
import * as SeparatorPrimitive from "@radix-ui/react-separator";

import { cn } from "~/utils/tailwind";

const Separator = React.forwardRef<
  React.ElementRef<typeof SeparatorPrimitive.Root>,
  React.ComponentPropsWithoutRef<typeof SeparatorPrimitive.Root>
>(
  (
    { className, orientation = "horizontal", decorative = true, ...props },
    ref,
  ) => (
    <SeparatorPrimitive.Root
      ref={ref}
      decorative={decorative}
      orientation={orientation}
      className={cn(
        "shrink-0 bg-border",
        orientation === "horizontal" ? "h-px w-full" : "h-full w-px",
        className,
      )}
      {...props}
    />
  ),
);
Separator.displayName = SeparatorPrimitive.Root.displayName;

export { Separator };

Update the import paths to match your project setup.

Usage

import { Separator } from "~/components/ui/Separator";
<Separator />