shadimage
lumiui
uiavatarsource: ok · hit

Avatar

An easily stylable avatar component.

npx shadcn add "https://www.lumiui.dev/r/avatar.json"
free

No selection tags yet — empty means no evidence, not lack of support.

Dependencies

Bundle weight · light
ui-primitives@base-ui/react

Registry dependencies

utils

Files1 · source cached 10/10/2026, 8:07:30 PM

registry/ui/avatar.tsx
import { Avatar as BaseAvatar } from "@base-ui/react/avatar";
import { cn } from "@/registry/lib/utils";

function Avatar({ className, ...props }: BaseAvatar.Root.Props) {
  return (
    <BaseAvatar.Root
      className={cn(
        "relative flex size-8 shrink-0 overflow-hidden rounded-full select-none",
        className,
      )}
      data-slot="avatar"
      {...props}
    />
  );
}

function AvatarImage({ className, ...props }: BaseAvatar.Image.Props) {
  return (
    <BaseAvatar.Image
      className={cn("aspect-square size-full object-cover", className)}
      data-slot="avatar-image"
      {...props}
    />
  );
}

function AvatarFallback({ className, ...props }: BaseAvatar.Fallback.Props) {
  return (
    <BaseAvatar.Fallback
      className={cn(
        "bg-muted flex size-full items-center justify-center rounded-full",
        className,
      )}
      data-slot="avatar-fallback"
      {...props}
    />
  );
}

export { Avatar, AvatarImage, AvatarFallback };

More from lumiui

Browse all components in this library →