mirror of
https://github.com/block/buzz.git
synced 2026-08-18 06:50:31 +02:00
- BackupStep.tsx: replace the single Keycase card with a chooser view
centered on a full-width masked key display:
- Masked nsec with same-length monospace mask, inline reveal toggle
(backup-key-reveal-toggle) and inline copy button (backup-copy-key)
with spinner/checkmark feedback and an inline error banner
(backup-copy-error) when the keychain fetch fails
- Copy guidance ("save it somewhere safe — a password manager is a
great place for it") moved into a tooltip on the copy icon
- Security note restored below the key card
- Encrypted download flow moved behind a footer CTA
(backup-option-download) between Next and Back; opens a dedicated
view with an "All backup options" back link (backup-back-to-options)
- Raw key is fetched from the keychain only on explicit reveal/copy;
the download path never fetches it
- EncryptedBackupCreator.tsx: de-brand "Keycase" to download/password
terminology across headings, buttons, errors, and a11y labels
("Create Keycase" → "Encrypt and download", "Keycase saved to" →
"Saved to", etc.)
- NsecMaskedDisplay.tsx: de-brand the ncryptsec kind label to
"encrypted key"
- onboarding-backup.spec.ts: rewrite for the new UX — chooser
masked-key/reveal/copy coverage (with clipboard permissions), download
happy path behind the footer CTA, return-to-chooser navigation, and
reveal error/retry paths replacing the old raw-key error tests
- onboarding-docked-cta-screenshots.spec.ts: capture the reveal toggle
on the chooser instead of the removed backup-show-raw-key flow
Settings keeps its own Keycase wording; only the onboarding surface is
de-branded here.
Signed-off-by: Taylor Ho <taylorkmho@gmail.com>
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