klopez4212
d00fff2c73
feat(desktop): horizontal scroll sections with Show all toggle
...
- Remove card containers from theme tiles (just image + name below)
- Switch all sections to horizontal scroll by default
- Add 'Show all' / 'Collapse' toggle to section headers (shows when
section has >4 items) — expands to a wrapping grid layout
- Reduce tile size to 140px for a more compact horizontal row
2026-07-06 13:31:36 +01:00
klopez4212
4155232381
feat(desktop): use split dark/light preview for system preference themes
...
Replaces the two separate ThemePreviewFrame images with a single
SystemPreferencePreviewFrame that shows dark on top and light on bottom,
matching the System Preference SVG design. Each paired theme tile now
uses this combined preview to visually communicate that it adapts to
the system color scheme.
2026-07-06 13:27:13 +01:00
klopez4212
ac00196c58
feat(desktop): redesign appearance settings with sectioned theme picker
...
Replaces the flat searchable theme list with three visual sections:
1. **Adapts to system** — Paired themes (light+dark) shown side by side
with preview images. Selecting one auto-enables follow-system behavior.
2. **Light** — Light-only themes (no dark counterpart) with single preview.
3. **Dark** — Dark-only themes (no light counterpart) with single preview.
Uses the same ThemePreviewFrame SVG from onboarding to show a visual
representation of each theme. Removes the separate "Use system setting"
toggle since paired themes now implicitly enable it.
Refactors shared theme preview components out of ThemeStep into:
- shared/theme/ThemePreviewFrame.tsx — SVG preview component
- shared/theme/useThemePreviewVars.ts — preview vars loading hook
The accent color picker remains below the theme sections.
2026-07-06 13:04:14 +01:00
klopez4212
87f354ae07
feat(desktop): restore section icon/emoji picker
...
Re-introduce the section icon feature that was accidentally removed in
PR #1428 (workspace rail unread observer refactor). This restores the
functionality originally added in PR #1424 .
Changes:
- Add icon?: string field to ChannelSection type
- Parse and persist icon in channelSectionsStorage
- Add emoji picker to Create/Rename section dialogs
- Render section icon in sidebar header and Move-to-section submenu
- Wire icon through useChannelSections create/rename methods
- Add unit tests for icon field parsing
Fixes regression where section icons were stripped during the #1428
refactor.
Co-authored-by: klopez4212 <klopez4212@gmail.com >
Signed-off-by: klopez4212 <klopez4212@gmail.com >
2026-07-05 09:30:50 +01:00
Tyler
33886e3dec
perf: GIN index for e-tag containment + delta profile fetch (scroll-back ~2.1s/page) ( #1514 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
2026-07-04 22:20:51 -04:00
Tyler
62bb9fe8c8
GUI read-model overhaul: server-assembled channel windows (Correct™ pagination + relay-signed bounds) ( #1500 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Signed-off-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1cc3ha7z055mu0rwwu7806t2wt8mj3pvu0uv5mfp2c50dahaqhczshdalg6 <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co >
2026-07-04 11:51:58 -04:00
Taylor Ho
c7a8b0babb
feat(desktop): show activity timestamps on demand ( #1506 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
2026-07-04 08:40:49 -07:00
klopez4212
f35aeb7986
feat(reconnect): replace top banner with animated sidebar overlay ( #1510 )
2026-07-04 08:37:34 -07:00
Tyler
20d3cdc22f
docs(nest-skill): explain agent-owned git repos and automatic auth ( #1437 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
2026-07-03 20:47:01 -04:00
Wes
a038c6465f
chore(release): release Buzz Desktop version 0.3.42 ( #1479 )
2026-07-03 09:16:52 -07:00
Wes
a3cf7eec1d
fix(desktop): bound read-state localStorage growth and recover from quota errors ( #1502 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-03 09:00:27 -07:00
klopez4212
bbf8d8912a
Customize macOS DMG installer ( #1496 )
2026-07-03 08:56:20 -07:00
Taylor Ho
654b6c374b
feat(profile): embed live activity feed in profile aux panel ( #1380 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
2026-07-03 15:40:29 +00:00
thomaspblock
204a0fd2ec
feat(desktop): contribution heatmap and graphical cards on projects overview ( #1497 )
2026-07-03 09:15:47 -04:00
thomaspblock
8e3c0ee958
feat(desktop): repository-first projects with git workflows ( #1471 )
...
Signed-off-by: Thomas Petersen <thomasp@squareup.com >
2026-07-03 08:11:33 -04:00
thomaspblock
5d4edf1535
fix(desktop): lock horizontal webview pan (Magic Mouse side-scroll) ( #1480 )
...
Signed-off-by: Thomas Petersen <thomasp@squareup.com >
2026-07-02 22:31:40 -04:00
klopez4212
228122fddc
Add agent catalog modal ( #1302 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Taylor Ho <taylorkmho@gmail.com >
2026-07-02 16:26:31 -07:00
Wes
e70dd1a1e7
fix(desktop): actually close relay sockets — plugin:websocket|disconnect does not exist ( #1481 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-02 22:55:53 +00:00
Will Pfleger
3e282a2418
feat(buzz-agent): config parity — thinking effort, model switching, normalized token limits ( #1470 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-02 22:52:38 +00:00
Will Pfleger
f9d06ae21a
fix(sidebar): scope channel sections storage to relay URL ( #1477 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-02 17:38:55 -04:00
Will Pfleger
d369ca9df1
fix(desktop): bind channel and thread context at compose time to prevent wrong-channel send ( #1472 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-02 20:15:44 +00:00
Will Pfleger
02ff06cac2
fix(relay-reconnect): resilient reconnect with fast-path, escalation, and polling ( #1456 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-02 19:30:24 +00:00
Wes
5bfd5ca270
feat: per-community workspace icon set by admins, served via NIP-11 ( #1463 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-02 11:58:42 -07:00
Wes
d9c4e4aa7f
fix: agent reliability — no restart on channel-add, visible dead-letter notice ( #1468 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-02 11:16:50 -07:00
Taylor Ho
c48006fc3e
fix(profile): consolidate agent profile runtime metadata ( #1451 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub14vtk7pvazqrq9639qu7e560wnqtl0d53ca4gjuvq6jzf3k2el23qqlwa7f <ab176f059d100602ea25073d9a69ee9817f7b691c76a897180d48498d959faa2@sprout-oss.stage.blox.sqprod.co >
2026-07-02 10:13:15 -07:00
Wes
e42dae3f9c
fix(desktop): simplify workspace rail badges ( #1462 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-07-02 08:45:57 -07:00
Wes
deb3e6adca
perf(desktop): instant channel switching — non-blocking first paint, persisted snapshots ( #1452 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-02 08:45:38 -07:00
Wes
9967b97f59
fix(desktop): classify timeline prepends so history loads don't bump unread ( #1416 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-02 07:49:06 -07:00
Wes
b779a3ee2f
fix(desktop): quiet gate for workspace switches instead of boot splash ( #1449 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-02 07:46:20 -07:00
Tyler
7da936fff8
fix(read-path): reach complete threads, dense-second timelines, and all people in the GUI ( #1418 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co >
2026-07-02 10:36:11 -04:00
Wes
15ad7ae87e
fix(desktop): stop search shortcut from hijacking the sidebar ( #1447 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-07-01 15:53:25 -07:00
Will Pfleger
fec7684366
feat(desktop): restore observer-feed regressions from #1381 and classify 4 new session/update types ( #1412 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-01 16:33:26 -04:00
Will Pfleger
bdeab23b59
fix(desktop): disable spellcheck/autocorrect/autocapitalize on emoji picker search ( #1438 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-01 16:23:55 -04:00
Wes
b32db5e0fd
chore(release): release Buzz Desktop version 0.3.41 ( #1435 )
2026-07-01 12:46:57 -06:00
Will Pfleger
323a86ade8
fix(desktop): sort reaction pills by earliest created_at ascending ( #1434 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-07-01 14:28:58 -04:00
klopez4212
3d08c3b02b
Group consecutive desktop messages ( #1429 )
2026-07-01 18:13:22 +00:00
klopez4212
db2a970115
Update Buzz app icon ( #1430 )
2026-07-01 10:58:43 -07:00
Wes
ce1f13e8f7
feat(desktop): add workspace rail unread observer ( #1428 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-07-01 10:55:30 -07:00
Wes
8fb33bdbca
Prioritize channel members in mention autocomplete ( #1431 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-07-01 10:54:32 -07:00
klopez4212
6a08a3f4c8
Tighten message density ( #1426 )
2026-07-01 16:50:50 +01:00
klopez4212
c0e10d67e0
Tighten sidebar section actions ( #1424 )
2026-07-01 15:22:09 +00:00
Wes
6c0e6f0bb7
Add memory copy actions ( #1427 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-07-01 08:05:40 -07:00
klopez4212
177fe5a3bf
Limit agent profile quick actions ( #1425 )
2026-07-01 07:54:30 -07:00
klopez4212
3e4e9dda94
Fade sidebar pinned chrome edges ( #1423 )
2026-07-01 07:51:05 -07:00
klopez4212
2fc8b9cf5f
Apply smooth corners to inline media ( #1422 )
2026-07-01 07:50:26 -07:00
klopez4212
4ae5a0d5e3
Align thread summary rows ( #1421 )
2026-07-01 07:48:58 -07:00
klopez4212
8c38847913
Keep channel day dividers sticky ( #1420 )
2026-07-01 07:46:12 -07:00
Wes
461c24ab3f
chore(release): release Buzz Desktop version 0.3.40 ( #1414 )
2026-06-30 17:16:32 -07:00
Wes
4fdc68f156
fix(desktop): stabilize channel-timeline scrollback with per-row height reserves ( #1413 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-30 16:53:18 -07:00
Taylor Ho
697f63ddcc
fix(sidebar): trim working badge label and name working agents in tooltip ( #1408 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
2026-06-30 16:27:34 -07:00