Back to Shadcn Ui

Avatar

apps/v4/content/docs/components/base/avatar.mdx

latest4.4 KB
Original Source

<ComponentPreview styleName="base-nova" name="avatar-demo" previewClassName="h-72" />

Installation

<CodeTabs> <TabsList> <TabsTrigger value="cli">Command</TabsTrigger> <TabsTrigger value="manual">Manual</TabsTrigger> </TabsList> <TabsContent value="cli">
bash
npx shadcn@latest add avatar
</TabsContent> <TabsContent value="manual"> <Steps className="mb-0 pt-2">

<Step>Install the following dependencies:</Step>

bash
npm install @base-ui/react

<Step>Copy and paste the following code into your project.</Step>

<ComponentSource name="avatar" title="components/ui/avatar.tsx" styleName="base-nova" />

<Step>Update the import paths to match your project setup.</Step>

</Steps> </TabsContent> </CodeTabs>

Usage

tsx
import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"
tsx
<Avatar>
  <AvatarImage src="https://github.com/shadcn.png" />
  <AvatarFallback>CN</AvatarFallback>
</Avatar>

Examples

Basic

A basic avatar component with an image and a fallback.

<ComponentPreview styleName="base-nova" name="avatar-basic" />

Badge

Use the AvatarBadge component to add a badge to the avatar. The badge is positioned at the bottom right of the avatar.

<ComponentPreview styleName="base-nova" name="avatar-badge" />

Use the className prop to add custom styles to the badge such as custom colors, sizes, etc.

tsx
<Avatar>
  <AvatarImage src="https://github.com/shadcn.png" alt="@shadcn" />
  <AvatarFallback>CN</AvatarFallback>
  <AvatarBadge className="bg-green-600 dark:bg-green-800" />
</Avatar>

Badge with Icon

You can also use an icon inside <AvatarBadge>.

<ComponentPreview styleName="base-nova" name="avatar-badge-icon" />

Avatar Group

Use the AvatarGroup component to add a group of avatars.

<ComponentPreview styleName="base-nova" name="avatar-group" />

Avatar Group Count

Use <AvatarGroupCount> to add a count to the group.

<ComponentPreview styleName="base-nova" name="avatar-group-count" />

Avatar Group with Icon

You can also use an icon inside <AvatarGroupCount>.

<ComponentPreview styleName="base-nova" name="avatar-group-count-icon" />

Sizes

Use the size prop to change the size of the avatar.

<ComponentPreview styleName="base-nova" name="avatar-size" />

You can use the Avatar component as a trigger for a dropdown menu.

<ComponentPreview styleName="base-nova" name="avatar-dropdown" />

RTL

To enable RTL support in shadcn/ui, see the RTL configuration guide.

<ComponentPreview styleName="base-nova" name="avatar-rtl" direction="rtl" previewClassName="h-72" />

API Reference

Avatar

The Avatar component is the root component that wraps the avatar image and fallback.

PropTypeDefault
size"default" | "sm" | "lg""default"
classNamestring-

AvatarImage

The AvatarImage component displays the avatar image. It accepts all Base UI Avatar Image props.

PropTypeDefault
srcstring-
altstring-
classNamestring-

AvatarFallback

The AvatarFallback component displays a fallback when the image fails to load. It accepts all Base UI Avatar Fallback props.

PropTypeDefault
classNamestring-

AvatarBadge

The AvatarBadge component displays a badge indicator on the avatar, typically positioned at the bottom right.

PropTypeDefault
classNamestring-

AvatarGroup

The AvatarGroup component displays a group of avatars with overlapping styling.

PropTypeDefault
classNamestring-

AvatarGroupCount

The AvatarGroupCount component displays a count indicator in an avatar group, typically showing the number of additional avatars.

PropTypeDefault
classNamestring-

For more information about Base UI Avatar props, see the Base UI documentation.