Image Avatar
Standard user avatar rendering remote profile images.
Atoms
Image element with fallback initials, status badge, and custom sizing.
pnpm add @quinkit/uiimport { Avatar } from "@quinkit/ui";Live previews · code · themes · viewport · dark mode
Standard user avatar rendering remote profile images.
Show initials or custom fallback when image fails to load.
Available size variants (sm, default, lg).
Avatars with online, away, or do-not-disturb status badges.
Stacked avatar collection representing team members.
Avatar used inside a realistic user profile component.
jane.doe@quinkit.ui
Avatar is a Week 3 atom in @quinkit/ui. It is implemented with strict TypeScript, design-token classes, dark-mode compatible colors, Storybook coverage, and unit tests.
aria-label for icon-only/unlabelled controls.focus-visible and the shared ring token.The component uses semantic tokens such as bg-background, text-foreground, border-input, bg-primary, and text-primary-foreground, so it adapts to .dark and theme palettes. Motion-sensitive styling uses motion-reduce:* or avoids required animation.
Public props are documented with JSDoc in packages/ui/src/components/atoms/avatar/avatar.tsx.
Avatar adheres to WAI-ARIA design patterns for accessible web components.
Keyboard Navigation
Tab / Shift + Tab — Focuses control and moves between interactive elements.Space / Enter — Triggers action or toggles selection.Escape — Closes open popovers, overlays, or dropdown menus.ARIA Standards
aria-* attributes.ring-ring) visible in both light & dark mode.Add a shadcn-compatible bridge file to your project that re-exports from @quinkit/ui.
npx shadcn@latest add https://quinkit-ui.vercel.app/r/avatar.json