Badge

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

BadgeSecondaryDestructiveOutline
Verified89920+
import { IconBadgeCheck } from "~/components/icons"
import { Badge } from "~/components/ui/badge"

export function BadgeDemo() {
  return (
    <div class="flex flex-col items-center gap-2">
      <div class="flex w-full flex-wrap gap-2">
        <Badge>Badge</Badge>
        <Badge variant="secondary">Secondary</Badge>
        <Badge variant="destructive">Destructive</Badge>
        <Badge variant="outline">Outline</Badge>
      </div>
      <div class="flex w-full flex-wrap gap-2">
        <Badge class="bg-blue-500 text-white dark:bg-blue-600" variant="secondary">
          <IconBadgeCheck />
          Verified
        </Badge>
        <Badge class="h-5 min-w-5 rounded-full px-1 font-mono tabular-nums">8</Badge>
        <Badge class="h-5 min-w-5 rounded-full px-1 font-mono tabular-nums" variant="destructive">
          99
        </Badge>
        <Badge class="h-5 min-w-5 rounded-full px-1 font-mono tabular-nums" variant="outline">
          20+
        </Badge>
      </div>
    </div>
  )
}

Installation

Usage

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

You can use the as prop to make another component look like a badge. Here's an example of a link that looks like a badge.

import { A } from "@solidjs/router"
import { Badge } from "~/components/ui/badge"
export function LinkAsBadge() {
return (
<Badge as={A} href="/">
Badge
</Badge>
)
}