Group avatars together.
Installation
npx shadcn@latest add @caprice/avatar-groupnpm install @caprice-ui/reactInstall the following dependencies:
npm install @base-ui/react lucide-reactAdd a cn helper
import { defineConfig, type VariantProps } from 'cva';import { twMerge } from 'tailwind-merge';export const { compose, cva, cx: cn,} = defineConfig({ hooks: { onComplete: (className: string) => twMerge(className), },});export type { VariantProps };Copy and paste the following code into your project.
'use client';import { mergePropsN } from '@base-ui/react/merge-props';import { useRender } from '@base-ui/react/use-render';import { cn } from '@/lib/utils';/** * Displays a group of avatars. * Renders a `<div>` element. * * Documentation: [Caprice UI Avatar Group](https://caprice-ui.com/docs/components/avatar-group) */export namespace Root { export type Props = useRender.ComponentProps<'div'>;}export function Root({ className, render, ...props }: Root.Props) { const defaultProps: useRender.ElementProps<'div'> & { 'data-slot'?: string } = { 'data-slot': 'avatar-group', className: cn('flex items-center -space-x-1.5', className), }; return useRender({ render, defaultTagName: 'div', props: mergePropsN<'div'>([defaultProps, props]), });}Update the import paths to match your project setup.
Usage
import * as AvatarGroup from "@/components/caprice-ui/avatar-group"import * as Avatar from "@/components/caprice-ui/avatar"import * as AvatarGroup from "@caprice-ui/react/avatar-group"import * as Avatar from "@caprice-ui/react/avatar"Examples
API Reference
Root
Prop
Type