Sonarist project

Sonarist / Design system

Documentation v1.0.0 · Work in progress · UI prototype with separate server foundations

Design system contents

Components

Avatars and identity marks

Provide compact person identity across rows, threads and ownership controls.

On this page

Purpose and composition

Provide compact person identity across rows, threads and ownership controls.

Use with names and metadata in lists; never use color as the only identity.

Anatomy

Anatomy
PartResponsibility
InitialsCaller-provided text
ColorTailwind class string
RingDefault white/zinc-900 boundary

Configuration and variants

Configuration and variants
Input / variantContract
initials / colorRequired; derive initials in parent when creating people
labelOptional aria-label and title
classNameSource sizes from 28px to 80px; can remove or change ring

States and feedback

States and feedback
StateVisible / behavioral result
StandaloneReadable initials
StackedThread participants overlap with source ring separation
OwnerDark neutral avatar with dark-theme text override

Interaction and responsive behavior

  • Avatar is an inline span; interactive wrappers provide button semantics.
  • Use stable identity colors.
  • Keep the accessible name on clickable participant wrappers.

Accessibility contract

  • Avatar label does not create an interactive control.
  • Check initials on every actual background.

Known implementation limits

Caller classes are concatenated by cn rather than utility-conflict resolution. Avoid incompatible class overrides unless their computed source behavior is verified.

Composition example

<Avatar initials="DP" color="bg-blue-600" label="Devon Park" />

Source references

Source references
FileResponsibility
components/ui/primitives.tsxAvatar
lib/mock-data.tsSource identity colors

Examples from the app

Actual Sonarist components with fictional conversations, people, example.com addresses and simulated operational states. Captured at 2× resolution or higher. Select an image to inspect it full size.

Avatars · Component detail · Light · Desktop · 1792 × 192 px

Source audit: 2026-10-08 · Revision 10f45d1377b5 · Documentation v1.0.0