import md5 from 'md5' /** * Returns Gravatar avatar URL for the given email, or empty string if no email. * Gravatar expects: trim, lowercase, then MD5 hex. Use empty string to show a placeholder (e.g. initial letter) in the UI. * * @param email - User email (optional) * @param size - Avatar size in pixels (default 64; navbar 32, drawer 40, profile 64–80) */ export function useGravatarUrl(email: string | undefined, size?: number): string { const normalized = email?.trim().toLowerCase() if (!normalized) return '' const hash = md5(normalized) const s = size ?? 64 return `https://www.gravatar.com/avatar/${hash}?s=${s}&d=identicon` }