mirror of
https://github.com/block/buzz.git
synced 2026-10-30 05:51:46 +00:00
Landing the cover drawer on current main pushed `ChannelPane.tsx` to 1003 lines, three over the 1000-line cap. The file was already over the cap on the cover drawer's original base (1010 lines, so shrinking was permitted), but main has since brought it down to 982, so it may not grow at all. Move the caller-owned idle auxiliary surface into its own component, the same split `ChannelAgentSessionSurface` already uses, which brings the pane back to 996. Behaviour-preserving: the panel and both of its presentations are byte-equivalent to the inline version, and the per-presentation React keys stay on `AnimatePresence`'s direct child rather than moving inside the new component, so the cover drawer and the split pane keep the distinct enter/exit identities main gave them. Co-authored-by: Bradley Axen <baxen@squareup.com> Signed-off-by: Bradley Axen <baxen@squareup.com> Signed-off-by: ss-dev-00 <a02c4e0850e5e612b4ddf95dbe2f5c56467cf27c6552203bc833ff438fb31971@buzz.block.builderlab.xyz>
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