For the complete documentation index, see llms.txt. Markdown variants are available by appending .md to any URL or sending an Accept: text/markdown header. An agent skill is available at /.well-known/agent-skills/site-skill.md.
119

Badge

Displays a badge or a component that looks like a badge.

BadgeSecondaryDestructiveOutline
import { Badge } from "@/components/ui/badge";

export function BadgeDemo() {
  return (
    <div className="flex w-full flex-wrap justify-center gap-2">
      <Badge>Badge</Badge>

Installation

$ pnpm dlx shadcn@latest add https://shadcn-cssinjs.com/r/badge.json

Usage

import { Badge } from "@/components/ui/badge";
<Badge variant="default | outline | secondary | destructive">Badge</Badge>

Variants

Use the variant prop to change the variant of the badge.

DefaultSecondaryDestructiveOutline
import { Badge } from "@/components/ui/badge";

export function BadgeVariants() {
  return (
    <div className="flex flex-wrap gap-2">
      <Badge>Default</Badge>

With Icon

You can render an icon inside the badge. Use data-icon="inline-start" to render the icon on the left and data-icon="inline-end" to render the icon on the right.

VerifiedBookmark
import { BadgeCheck, BookmarkIcon } from "lucide-react";

import { Badge } from "@/components/ui/badge";

export function BadgeWithIconLeft() {
  return (

With Spinner

You can render a spinner inside the badge. Remember to add the data-icon="inline-start" or data-icon="inline-end" prop to the spinner.

DeletingGenerating
import { Badge } from "@/components/ui/badge";
import { Spinner } from "@/components/ui/spinner";

export function BadgeWithSpinner() {
  return (
    <div className="flex flex-wrap gap-2">

Use the render prop to render a link as a badge.

import { ArrowUpRightIcon } from "lucide-react";

import { Badge } from "@/components/ui/badge";

export function BadgeAsLink() {
  return (

Custom Colors

You can customize the colors of a badge by adding custom classes such as bg-green-50 dark:bg-green-800 to the Badge component.

BlueGreenSkyPurpleRed
import { Badge } from "@/components/ui/badge";

export function BadgeCustomColors() {
  return (
    <div className="flex flex-wrap gap-2">
      <Badge className="bg-blue-50 text-blue-700 dark:bg-blue-950 dark:text-blue-300">

RTL

To enable RTL support in shadcn/ui, see the RTL configuration guide.

شارةثانويمدمرمخططمتحققإشارة مرجعية
"use client";

import { BadgeCheck, BookmarkIcon } from "lucide-react";
import * as React from "react";

import { useTranslation } from "@/components/language-selector";

API Reference

Badge

The Badge component displays a badge or a component that looks like a badge.

PropTypeDefault
variant"default" | "secondary" | "destructive" | "outline" | "ghost" | "link""default"
classNamestring-