Avatar

A user avatar component with image and fallback

An avatar component built with Ark UI that supports both image and fallback content. Use the convenience API for a single image + fallback, or the compound API for full control.

JD
import { Avatar } from "@/components/ui/avatar";

export default function Example() {
  return (
    <Avatar
      src="https://avatars.githubusercontent.com/u/000000?v=4"
      alt="User avatar"
      fallback="JD"
    />
  );
}

Installation

bash
liminal add avatar

Usage

JD
import { Avatar } from "@/components/ui/avatar";

export default function Example() {
  return (
    <Avatar
      src="https://avatars.githubusercontent.com/u/000000?v=4"
      alt="User avatar"
      fallback="JD"
    />
  );
}

Examples

With image

U
<Avatar
  src="https://avatars.githubusercontent.com/u/000000?v=4"
  alt="User"
  fallback="U"
/>

Fallback only

When there is no image or it fails to load, the fallback text or content is shown.

AB
import { Avatar } from "@/components/ui/avatar";

export default function Example() {
  return <Avatar fallback="AB" />;
}

Compound API

For custom layout or multiple elements, use AvatarRoot, AvatarImage, and AvatarFallback.

JD
import {
  AvatarRoot,
  AvatarImage,
  AvatarFallback,
} from "@/components/ui/avatar";

export default function Example() {
  return (
    <AvatarRoot className="relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full">
      <AvatarImage src="/avatar.png" alt="User avatar" />
      <AvatarFallback>JD</AvatarFallback>
    </AvatarRoot>
  );
}

API

PropTypeDefaultDescription
srcstring-Image URL for the avatar.
altstring-Accessible description of the image.
fallbackReact.ReactNode-Content shown when there is no image or it fails to load.