Files
amethyst/desktopApp/plans
nrobi144andClaude Opus 4.8 84a031b931 feat(desktop): enrich the DM chat composer + message UX
Brings the desktop DM experience up to par with a modern chat client,
reusing existing commons/quartz infrastructure throughout.

Composer:
- Emoji picker (org.kodein.emoji, MIT) with search; unicode + NIP-30
  custom-emoji ":shortcode:" autocomplete in one strip
- @mention autocomplete (avatar + display name) inserting nostr:npub
- Reply-quoting: composer bar + a quoted chip on reply bubbles that taps
  to scroll-and-highlight the original (bounce + flash)
- Per-message image quality selector; send-in-progress spinner

Rendering:
- DM bubbles render rich text (mentions resolve to names; image/GIF/
  custom-emoji inline) instead of raw text

GIF search (Nostr-native, no third-party API):
- Query NIP-94 kind-1063 GIF metadata from a configurable relay list
  (nos.lol + relay.damus.io), dedup + client-side filter, animated preview

Uploads / privacy:
- Encrypted DM files upload as opaque application/octet-stream by default
  so the media server can't learn the media type; optional "Reveal media
  type" toggle for strict servers. Only reencode jpg/png/webp; GIF/video/
  AVIF/HEIC pass through. Actionable errors for servers that reject
  private uploads
- Reply/glyph: add a real Reply icon to the Material Symbols subset

Robustness:
- Preserve Messages state (selected room, draft, attachments) across the
  device lock by hoisting it above the lock gate
- Thread the send so the composer always clears and errors surface

Adds unit tests for the GIF merge/filter and caret insertion.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-19 10:59:21 +03:00
..

desktopApp plans

Audited 2026-06-30. 13 plans: 10 shipped (archived), 2 in-progress, 1 queued, 0 abandoned.

In progress

Plan Summary
2026-05-12-feat-desktop-wallet-zapping-test-coverage-plan.md Desktop wallet/zap test coverage; NWC handler + RPC round-trip tests shipped, wallet-column-state and zap-dialog-logic tests still missing.
2026-06-21-napplet-desktop-host.md Desktop NIP-5A/5D host; shared core extractions done, desktop engine/scheme-handler/transport/UI edge not yet built.

Queued

Plan Summary
2026-05-21-embedded-wallet-phase2-research.md Research for an embedded self-custodial Lightning wallet (Breez/ldk-node/lightning-kmp); parked, no code.

Archived (shipped)

Plan Summary
archive/2026-05-09-embedded-local-relay-plan.md In-process SQLite local relay with write-through + startup hydration + settings UI.
archive/2026-05-11-wallet-zapping-brainstorm.md Brainstorm map for the desktop wallet & zapping experience (NWC parity shipped).
archive/2026-05-12-wallet-zapping-phase1-2-plan.md NWC wallet column (connect/balance/send/receive) plus upgraded zapping UX.
archive/2026-05-19-fix-desktop-deb-launch-crash-brainstorm.md Fix .deb launch crash via jlink modules + CI launch smoke test.
archive/2026-05-20-wallet-zapping-manual-testing-sheet.md Manual QA sheet for the desktop wallet & zapping feature.
archive/2026-05-23-feat-send-dialog-lnurl-pay-brainstorm.md Brainstorm for LNURL-pay / lightning-address support in the send dialog.
archive/2026-05-23-feat-send-dialog-lnurl-pay-plan.md Send dialog accepts LNURL + lightning addresses with auto-detect/resolve flow.
archive/2026-05-23-fix-nsec-session-persistence-brainstorm.md Fix nsec sessions not persisting across restarts (save on App-level scope).
archive/2026-06-08-feat-desktop-image-compression-plan.md JPEG re-encode/downscale upload pipeline with EXIF strip + failure dialog, shared with CLI.
archive/2026-06-17-feat-app-launch-optimization-plan.md Launch testing/benchmark foundation + targeted launch-path fixes (all in-scope phases landed).