react ~6 KB 0 deps v0.1.0 ↗ GitHub ↗

@mshafiqyajid/react-avatar

Headless avatar hook and styled component. Image with initials fallback, status indicator, circle/square shape, group stacking with overflow count.

Playground #

SY
Props
TSX
import { AvatarStyled } from "@mshafiqyajid/react-avatar/styled";
import "@mshafiqyajid/react-avatar/styles.css";

<AvatarStyled
  name="Shafiq Yajid"
/>

Install #

npm install @mshafiqyajid/react-avatar

Quick start #

import { AvatarStyled, AvatarGroup } from "@mshafiqyajid/react-avatar/styled";
import "@mshafiqyajid/react-avatar/styles.css";

<AvatarStyled src="/photo.jpg" name="Shafiq Yajid" status="online" />

// Group
<AvatarGroup max={3}>
  <AvatarStyled name="Alice" />
  <AvatarStyled name="Bob" />
  <AvatarStyled name="Charlie" />
  <AvatarStyled name="Dave" />
</AvatarGroup>

API #

PropTypeDefaultDescription
srcstringImage URL
namestringName for initials fallback
size"xs" | "sm" | "md" | "lg" | "xl""md"Size
shape"circle" | "square""circle"Shape
status"online" | "offline" | "busy" | "away"Presence indicator dot
borderbooleanfalseWhite border ring
fallbackReactNodeCustom fallback content
colorstringCustom background color e.g. "#6366f1"
onClick() => voidMakes avatar clickable with hover effect
Edit this page on GitHub