ALOHA // NEXTUI

Card

Tropical feature card with a colored icon element, category tag, title, and description. Supports coral, turquoise, yellow, green, and pink color variants.

$npx @voltenworks/shipui add card --theme aloha
Or install the base component for free:
Live Preview
Open full demo
voltenworks.com/shipui/aloha/demo/components#04-card
Usage
TSX
<Card card={{
  icon: "๐ŸŒบ",
  tag: "Wellness",
  tagVariant: "coral",
  title: "Morning ritual",
  description: "Start each day with intention.",
}} />
Variants
<Card card={{ icon: "๐ŸŒบ", tag: "Wellness", tagVariant: "coral", title: "Morning ritual", description: "Start each day with intention." }} />
<Card card={{ icon: "๐ŸŒŠ", tag: "Adventure", tagVariant: "turquoise", title: "Surf lessons", description: "Learn to ride the waves." }} />
<Card card={{ icon: "๐ŸŒธ", tag: "Relaxation", tagVariant: "pink", title: "Spa retreat", description: "Unwind with full-day treatments." }} />
Source
TSX
import { cn } from '@/lib/utils'
import type { CardItem } from '@/types'

interface CardProps {
  card:       CardItem
  className?: string
}

const TAG_CLASS: Record<string, string> = {
  coral:     'card-tag card-tag--coral',
  turquoise: 'card-tag card-tag--turquoise',
  yellow:    'card-tag card-tag--yellow',
  green:     'card-tag card-tag--green',
  pink:      'card-tag card-tag--pink',
}

const ICON_CLASS: Record<string, string> = {
  coral:     'card-icon-el card-icon--coral',
  turquoise: 'card-icon-el card-icon--turquoise',
  yellow:    'card-icon-el card-icon--yellow',
  green:     'card-icon-el card-icon--green',
  pink:      'card-icon-el card-icon--pink',
}

export function Card({ card, className }: CardProps): React.JSX.Element {
  const tagClass  = TAG_CLASS[card.tagVariant]  ?? 'card-tag card-tag--coral'
  const iconClass = ICON_CLASS[card.tagVariant] ?? 'card-icon-el card-icon--coral'

  return (
    <div className={cn('aloha-card', className)}>
      <span className={iconClass}>{card.icon}</span>
      <span className={tagClass}>{card.tag}</span>
      <h3 className="card-title">{card.title}</h3>
      <p className="card-description">{card.description}</p>
    </div>
  )
}
Preview in theme demoGet full theme, $29
Works withNext.js 15React 19Tailwind v4TypeScript 5
More from ALOHA // NEXT
ALOHA // NEXTUI

Button

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

ALOHA // NEXTUI

Badge

Tropical badge with coral, turquoise, yellow, green, and pink variants for category tags and labels.

ALOHA // NEXTUI

Text

Polymorphic text primitive with body, caption, label, and code variants styled for the ALOHA tropical light palette.