---
url: "https://vueda.dev/v3/reference/api/vue/Badge.md"
title: "Badge"
---

# Badge

## Overview

A badge component built on Reka UI's Primitive, supporting variant styles.

Theme entry: [Badge](/v3/reference/theming/keys/Badge.md)

## Props

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| <span id="prop-themeOverride">themeOverride</span> | `Object` |  | `null` | A partial ThemeObject keyed by component name, merged over this component's theme and provided to descendants. |
| <span id="prop-variant">variant</span> | `('default'\|'secondary'\|'destructive'\|'outline'\|'info'\|'success'\|'warning')` |  | `undefined` | Visual style variant. `default`, `secondary`, and `destructive` render a solid fill; `outline` renders a bordered chip; `info`, `success`, and `warning` render a tinted status surface. Status supplied by the application or server is what a badge presents; it is never an authorization signal. |
| <span id="prop-numeric">numeric</span> | `boolean` |  | `false` | Render as a numeric badge (count / digit). Switches to a fixed-width mono recipe so single-, double-, and triple-digit values align across rows. |
| <span id="prop-class">class</span> | `import('vue').HTMLAttributes['class']` |  | `undefined` | Additional CSS classes to apply to the root element. |
| <span id="prop-as">as</span> | `string\|object` |  | `undefined` | The element or component to render as. |
| <span id="prop-asChild">asChild</span> | `boolean` |  | `false` | When true, merges props onto the child element instead of rendering a wrapper. |

## Slots

### `default` {#slot-default}

Slot.

## Source

`client/lib/display/badge/Badge.vue`
