Avatar
Avatar
Display user profile images or initials in circular containers.
J
X
12345678910111213package showcase import ( popui "github.com/invopop/popui/go" "github.com/invopop/popui/go/props" ) templ AvatarDefault() { <div class="flex items-center gap-4"> @popui.Avatar(props.Avatar{Initial: "J"}) @popui.Avatar(props.Avatar{Size: "lg", Initial: "X"}) </div> }
Sizes
Avatar comes in two sizes: default (small) and large (lg).
D
L
12345678910111213package showcase import ( popui "github.com/invopop/popui/go" "github.com/invopop/popui/go/props" ) templ AvatarSizes() { <div class="flex items-center gap-4"> @popui.Avatar(props.Avatar{Initial: "D"}) @popui.Avatar(props.Avatar{Size: "lg", Initial: "L"}) </div> }
With Images
You can pass an Image component as a child instead of using the Initial prop.
1234567891011121314151617package showcase import ( popui "github.com/invopop/popui/go" "github.com/invopop/popui/go/props" ) templ AvatarWithImages() { <div class="flex items-center gap-4"> @popui.Avatar() { @popui.Image(props.Image{Src: "https://i.pravatar.cc/150?img=1"}) } @popui.Avatar(props.Avatar{Size: "lg"}) { @popui.Image(props.Image{Src: "https://i.pravatar.cc/150?img=3"}) } </div> }
API Reference
Avatar
Displays a user avatar with an image or initials in a circular container.
| Name | Type | Default | Description |
|---|---|---|---|
ID | string | - | Unique identifier for the avatar element |
Class | string | - | Additional CSS classes to merge with base styles |
Attributes | templ.Attributes | - | Additional HTML attributes to apply to the div element |
Initial | string | - | Text to display (typically initials) when no image is provided |
Size | string | "" (default) | Size variant: "lg" for large (8x8), default is small (5x5) |