Components

Tables

Tables are the heart of Swift Digital. They must be dense enough for power users yet calm enough for occasional ones.

Standard Table

IDCampaignFolderSentOpen rateStatus
EML-2041Use case 7 — Lapsed VisitorMarketing1,008,97942.1%Sent
EML-2040CCIWA Survey Email — ReminderSurveys12,44031.7%Sent
EML-2039Reminder — Action RequiredCompliance8,210Draft
EML-2038Final Reminder — Action RequiredCompliance8,210Scheduled
EML-2037Internal Notice: New Department ProtocolInternal41288.4%Sent

Anatomy

  • header — N50 background, N600 text, 11px uppercase, 700 weight
  • row — 44px tall, 14px text, 12px horizontal padding
  • zebra — alternating rows at 30% N50 — optional, only for >6 rows
  • hover — full row tints to N50, never colour the brand blue
  • numbers — right-aligned with tabular-nums for clean columns
  • IDs — JetBrains Mono, smaller, muted

Status Badges

SentDraftScheduledPendingFailed

Usage

✓ Do

Right-align numerical columns with tabular-nums for predictable column widths.

✓ Do

Truncate long text with ellipsis and reveal full value on hover via tooltip.

✕ Don't

Don't add row shadows or heavy borders — calm dividers keep dense data scannable.

✕ Don't

Don't colour entire rows by status — use a small badge in a status column.