mirror of
https://github.com/block/buzz.git
synced 2026-10-31 06:21:34 +00:00
The appearance-widening migration read the live global glass keys, which this feature now rewrites on every community switch, and gated the carry-forward on a single per-profile latch. A brand-new or unreachable community visited first therefore reset glassBackground/glassOpacity/prominentActiveTab to defaults and republished the loss, and the one-shot latch only ever carried settings forward into whichever community hydrated first. Capture the profile's pre-migration appearance once into a durable snapshot, before the first mount rewrites the global keys, and derive both the empty-scope and legacy-record fallbacks from that snapshot. Every community now inherits the same former glass and prominent-tab choices regardless of hydration order or relay reachability. Replaces the per-profile appearance-migrated latch. On mobile, defaultCommunityTheme and legacyPreference() were constructor-built with the appearance presence flags defaulting to true, so a pre-hydration edit serialized false/65/false over a real desktop record. Mark those two origins as carrying no desktop appearance opinion so they omit the desktop-only fields, matching how a three-field payload parses. Co-authored-by: kenny lopez <klopez4212@gmail.com> Reviewed-by: Mongo <mongo@buzz.block.builderlab.xyz> Signed-off-by: kenny lopez <klopez4212@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