Files
zeekay 16c4453cc1 feat: sync with upstream shadcn/ui (through [email protected])
Squash merge of shadcn-ui/ui main branch into hanzo/ui, bringing in:
- [email protected] through [email protected] releases
- New apps/v4 directory structure
- Registry system improvements and MCP server
- Framework support (Vue, Svelte, React Native)
- New templates (vite-app, monorepo-next, laravel)
- Zod 4 compatibility (scoped override for zod@>4)
- Test fixture corrections for alias resolution

All 867 merge conflicts resolved preserving Hanzo customizations.
1020/1020 shadcn tests pass.
2026-02-09 10:44:26 -08:00

92 lines
1.4 KiB
Plaintext

---
title: Badge
description: Displays a badge or a component that looks like a badge.
component: true
---
<ComponentPreview name="badge-demo" description="A badge" />
## Installation
<CodeTabs>
<TabsList>
<TabsTrigger value="cli">CLI</TabsTrigger>
<TabsTrigger value="manual">Manual</TabsTrigger>
</TabsList>
<TabsContent value="cli">
```bash
npx @hanzo/ui@latest add badge
```
</TabsContent>
<TabsContent value="manual">
<Steps>
<Step>Copy and paste the following code into your project.</Step>
<ComponentSource name="badge" />
<Step>Update the import paths to match your project setup.</Step>
</Steps>
</TabsContent>
</CodeTabs>
## Usage
```tsx
import { Badge } from "@/components/ui/badge"
```
```tsx
<Badge variant="outline">Badge</Badge>
```
### Link
You can use the `badgeVariants` helper to create a link that looks like a badge.
```tsx
import { badgeVariants } from "@/components/ui/badge"
```
```tsx
<Link className={badgeVariants({ variant: "outline" })}>Badge</Link>
```
## Examples
### Default
<ComponentPreview name="badge-demo" description="A badge" />
---
### Secondary
<ComponentPreview
name="badge-secondary"
description="A badge using secondary as variant."
/>
---
### Outline
<ComponentPreview
name="badge-outline"
description="A badge using outline as variant."
/>
---
### Destructive
<ComponentPreview name="badge-destructive" description="A destructive badge." />