mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-11 08:47:33 +00:00
Wire NIP-82 Software Applications (kind 32267), Releases (kind 30063) and Assets (kind 3063) into the Quartz event model and surface them through a dedicated rendering path in Amethyst. Quartz: extend the existing experimental NIP-82 builders with topic (`t`) and NIP-34 app-link (`a`) helpers, and add a small detector (`isNip82SoftwareRelease`/`asSoftwareRelease`) so kind 30063 events can be disambiguated from NIP-51 ReleaseArtifactSetEvent at the renderer layer. Pin behavior with unit tests covering build paths, disambiguation, and the real-world Amethyst NIP-82 description event. Amethyst: add modern card visualizations for each kind — application header with icon/screenshots/platforms/topics/links, release header with channel pill and bundled-asset count, and asset row with MIME, size and platforms — and dispatch to them from both `NoteCompose` and `NoteMaster` (`ThreadFeedView`). A new "Apps" feed (left nav drawer) mirrors the Picture Feeds shape: `SoftwareAppsFeedFilter` reads kind 32267 from `LocalCache`, a `PerUserEoseManager`-backed subscription pulls applications and releases from outbox relays, and a dedicated screen renders them in a `LazyColumn` of `RenderSoftwareApplication` cards.