Skip to main content

Badge

Small pill-shaped label used to show status, counts, or categories. All props are optional — render with an icon, text, both, or neither.

Basic Usage​

import { Badge } from '@multinaire/expo-ui';

<Badge />
<Badge title="New" />
<Badge icon="Star1" />
<Badge type="success" icon="TickCircle" title="Verified" />

Props​

All props are optional.

PropTypeDefaultDescription
typeBadgeType'primary'Color variant of the badge
iconIconName—Icon name from the Iconsax library or the built-in custom icon set
titlestring—Label text displayed inside the badge
testIDstringtitleTest identifier for UI automation. Defaults to the title value
onPress() => void—Press handler. Renders the badge as a touchable when provided

BadgeType​

ValueBackgroundForeground
'primary'primaryonPrimary
'secondary'secondaryonSecondary
'surface'backgroundVariantonBackground
'success'successonPrimary
'warning'warningonPrimary
'error'erroronPrimary

Examples​

All Variants​

<Badge type="primary" title="Primary" />
<Badge type="secondary" title="Secondary" />
<Badge type="surface" title="Surface" />
<Badge type="success" title="Active" />
<Badge type="warning" title="Pending" />
<Badge type="error" title="Failed" />

With Icon​

<Badge type="success" icon="TickCircle" title="Verified" />
<Badge type="error" icon="CloseCircle" title="Rejected" />
<Badge type="warning" icon="InfoCircle" title="Review" />

Text Only​

<Badge title="New" />
<Badge type="error" title="99+" />

Icon Only​

<Badge icon="Star1" />
<Badge type="error" icon="CloseCircle" />

Count Badge​

<Badge type="error" title="99+" />

Pressable Badge​

<Badge
type="primary"
title="Filter"
onPress={() => openFilterSheet()}
/>