mirror of
https://github.com/block/buzz.git
synced 2026-11-12 04:12:21 +00:00
Radix AvatarFallback's delayMs exists to avoid an initials flash while an avatar image loads. With no image src there is nothing to wait for, yet the 200ms delay still applied — so avatar-less owners painted a blank 16px box on cold renders (caught in live-build review). Only apply the delay when an image src is present. Tighten the e2e so it can no longer pass on an empty wrapper: seed one owner with a hermetic data-URL avatar and one without, assert a fully loaded <img> (naturalWidth > 0) for the former and visible initials text for the latter, and give the second-level owner-profile fetch generous timeouts to kill the cold-run race. 18 consecutive runs green including cold server starts. Co-authored-by: Taylor Ho <taylorkmho@gmail.com> Signed-off-by: Taylor Ho <taylorkmho@gmail.com>
Buzz
Desktop chat shell with:
- Tauri + React + TypeScript + Vite
- Tailwind CSS
- shadcn/ui-ready shared components
- Biome (lint/format/check)
- Feature-driven frontend structure
Scripts
pnpm dev- run the web frontendpnpm tauri dev- run the desktop apppnpm build- typecheck and build frontendpnpm typecheck- TypeScript checkspnpm lint- Biome lintpnpm format- Biome format (write)pnpm check- Biome check
Structure
src/shared- reusable app-wide code (ui,lib,styles)src/features- feature modules (vertical slices)src/app- top-level app composition