Installation
Usage
import ButtonBadge from "@/components/ruixen/button-badge";
import { Bell, Mail, ShoppingCart } from "lucide-react";
export default function MyComponent() {
return (
<div className="flex gap-4">
<ButtonBadge badge={3} leftIcon={<Bell className="size-4" />}>
Notifications
</ButtonBadge>
<ButtonBadge badge={12} leftIcon={<Mail className="size-4" />}>
Messages
</ButtonBadge>
<ButtonBadge badge="New" variant="ghost">
Features
</ButtonBadge>
</div>
);
}Props
| Prop | Type | Default | Description |
|---|---|---|---|
badge | number | string | - | Badge content |
leftIcon | React.ReactNode | - | Icon on the left side |
rightIcon | React.ReactNode | - | Icon on the right side |
variant | "default" | "outline" | "secondary" | "ghost" | "default" | Button style variant |
className | string | - | Additional CSS classes |
Features
- Numeric or text badges
- Positioned badge indicator
- Support for left/right icons
- Multiple style variants
- Light and dark mode support

