Files
amethyst/desktopApp
Vitor PamplonaandClaude Opus 5 ce888dea74 feat: render Simple Nostr Objects in the feed and thread
A kind 33331 object now draws where it appears: a card with the object,
its name and its vertex and face counts, and a tap opens it where it can
be turned with a drag. Quoting a nostr:naddr to one renders it inline.

The thumbnail goes through Coil, keyed by event, size and view, so
scrolling past the same object costs a cache hit. The viewer deliberately
does not: a drag makes a new angle every frame, and at 360dp each would be
a half-megabyte cache entry that evicts everything else within a second of
dragging. It rasterises straight to a bitmap instead, through a new
PlatformImage.toComposeImageBitmap() beside the existing Coil bridge.

A payload that fails §1.9 is not drawn, which the deck requires, and the
card shows the rule it broke rather than failing silently, which is what
§3.1 asks for and the whole reason the parser hands a rule back.

LocalCache stores 33331 addressably, without which the addressable cache
never holds the object and a quoted naddr stays empty.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JwXApJjoZYtkD3sPRWbPNa
2026-09-21 22:26:50 +00:00
..