Skip to content

Badge

Badge is a small label component used to highlight status, categories, or counts. It supports multiple semantic variants and can be filled or outlined.

DefaultNewCompletePendingError

Neutral badge for general labels.

LabelOutlined
<Badge>Label</Badge>
<Badge outlined>Outlined</Badge>

Primary accent badge for highlighting important items.

FeaturedNew
<Badge variant="gold">Featured</Badge>
<Badge variant="gold" outlined>New</Badge>

Indicates completion or positive status.

CompleteVerified
<Badge variant="success">Complete</Badge>
<Badge variant="success" outlined>Verified</Badge>

Indicates attention needed or in-progress state.

PendingReview
<Badge variant="warning">Pending</Badge>
<Badge variant="warning" outlined>Review</Badge>

Indicates errors or critical states.

FailedInvalid
<Badge variant="error">Failed</Badge>
<Badge variant="error" outlined>Invalid</Badge>

Indicates informational states.

InfoBeta
<Badge variant="info">Info</Badge>
<Badge variant="info" outlined>Beta</Badge>

SmallMediumLarge
SizeFontPaddingUsage
sm10px6×2Compact lists, tables
md12px8×3Default, most cases
lg14px12×4Headers, featured items

Hexagram 1New
Hexagram 23Read
Hexagram 44Saved
HeavenEarthThunderWater

PropTypeDefaultDescription
childrenstringRequiredBadge text
variant'default' | 'success' | 'warning' | 'error' | 'info' | 'gold''default'Color variant
size'sm' | 'md' | 'lg''md'Badge size
outlinedbooleanfalseUse outline style
styleViewStyle-Custom styles

import { Badge, Card } from '@synchronicity/react-native';
import { View, Text } from 'react-native';
function ReadingCard({ reading }) {
return (
<Card variant="elevated">
<View style={styles.header}>
<Text style={styles.title}>{reading.hexagram.name}</Text>
<Badge
variant={reading.isNew ? 'gold' : 'default'}
size="sm"
>
{reading.isNew ? 'New' : `#${reading.hexagram.number}`}
</Badge>
</View>
<Text style={styles.date}>{reading.date}</Text>
</Card>
);
}