EMBER // NEXTUI

Badge

Ember-styled badge with five color variants: orange, amber, green, red, and muted. Suited for category labels, status tags, and inline highlights.

$npx @voltenworks/shipui add badge --theme ember
Or install the base component for free:
Live Preview
Open full demo
voltenworks.com/shipui/ember/demo/components#02-badge
Usage
TSX
<Badge variant="orange">Featured</Badge>
Variants
<Badge variant="orange">Featured</Badge>
<Badge variant="amber">Pending</Badge>
<Badge variant="green">Active</Badge>
<Badge variant="red">Expired</Badge>
<Badge variant="muted">Archived</Badge>
Source
TSX
import type * as React from 'react'
import { cn } from '@/lib/utils'

interface BadgeProps {
  children: React.ReactNode
  variant?: 'orange' | 'amber' | 'green' | 'red' | 'muted'
  className?: string
}

const variantClass: Record<NonNullable<BadgeProps['variant']>, string> = {
  orange: 'emb-badge emb-badge-orange',
  amber:  'emb-badge emb-badge-amber',
  green:  'emb-badge emb-badge-green',
  red:    'emb-badge emb-badge-red',
  muted:  'emb-badge emb-badge-muted',
}

export function Badge({ children, variant = 'orange', className }: BadgeProps): React.JSX.Element {
  return (
    <span className={cn(variantClass[variant], className)}>
      {children}
    </span>
  )
}
Preview in theme demoGet full theme, $49
Works withNext.js 15React 19Tailwind v4TypeScript 5
More from EMBER // NEXT
EMBER // NEXTUI

Button

Warm-toned button with primary, secondary, and ghost variants in three sizes. Renders as a Next.js Link when an href is provided.

EMBER // NEXTUI

Text

Polymorphic text primitive with body, caption, label, and code variants. Renders as p, span, or div via the `as` prop.

EMBER // NEXTUI

Card

Composable card with Card, CardHeader, CardBody, and CardFooter sub-components. Uses `emb-ui-card` CSS classes for the Ember warm palette.