Nostr Compass Podcast

Nostr Compass #16


Listen Later

### News
- **00:00 Amethyst ships pinned notes, relay management, and Request to Vanish**
Amethyst shipped six releases from v1.07.0 through v1.07.5 in three days. The headline features span pinned notes, a polls feed, [NIP-62](/en/topics/nip-62/) Request to Vanish for requesting full event deletion from relays, [NIP-86](/en/topics/nip-86/) relay management API directly from the client, [NIP-66](/en/topics/nip-66/) relay liveness in the info screen, and [NIP-43](/en/topics/nip-43/) member info display. v1.07.2 added GIF keyboard uploads and fixed an Amber signing regression, and v1.07.5 fixes an image uploading crash.
- **01:44 NIP-5A merges, bringing static websites to Nostr**
[NIP-5A](https://github.com/nostr-protocol/nips/blob/master/5A.md) merged via [PR #1538](https://github.com/nostr-protocol/nips/pull/1538), defining kind `15128` for root sites and kind `35128` for named sites. Each manifest maps URL paths to SHA256 hashes, with `server` tags pointing to [Blossom](/en/topics/blossom/) storage hosts. A host server resolves the author's pubkey from the subdomain, fetches the manifest from the author's relay list, and serves files by downloading matching blobs. Existing implementations include [nsite](https://github.com/lez/nsite) and [nsite-manager](https://github.com/hzrd149/nsite-manager).
- **09:16 White Noise fixes relay churn and expands client controls**
White Noise shipped [v2026.3.23](https://github.com/marmot-protocol/whitenoise/releases/tag/v2026.3.23) with quorum-based relay-list publishing, scoped ephemeral relay sessions, NIP-C7 reply threading, deleted message placeholders, in-app bug reports via [NIP-44](/en/topics/nip-44/) anonymous reports, chat archiving, mute with configurable durations, notification settings, and preparatory push-registration work for iOS and Android.
- **11:33 Nostr VPN reaches v0.3.0 with roster sync and invite v2**
[nostr-vpn](https://github.com/mmalmi/nostr-vpn) shipped through [v0.3.3](https://github.com/mmalmi/nostr-vpn/releases/tag/v0.3.3) with two breaking changes: invite format v2 and admin-signed roster sync. An admin node can now push membership changes to all peers without manual per-peer configuration updates.
- **13:22 nospeak launches as a 1.0 private messenger**
[nospeak](https://github.com/psic4t/nospeak) shipped [1.0.0](https://github.com/psic4t/nospeak/releases/tag/v1.0.0) with [NIP-17](/en/topics/nip-17/) one-on-one chats using [NIP-59](/en/topics/nip-59/) gift wrap and [NIP-44](/en/topics/nip-44/) encryption, AES-256-GCM media encryption before upload to Blossom, and a self-hostable container deployment.
- **13:49 Flotilla v1.7.0 adds voice rooms and email login**
[Flotilla](https://gitea.coracle.social/coracle/flotilla) shipped [v1.7.0](https://gitea.coracle.social/coracle/flotilla/src/tag/1.7.0) and [v1.7.1](https://gitea.coracle.social/coracle/flotilla/src/tag/1.7.1) with voice rooms contributed by mplorentz, email/password login, proof-of-work DMs, DM editing, Blossom support detection, Android push notification fallback, and redesigned relay onboarding. The voice room join dialog solves a UX problem where entering a voice-enabled room previously forced microphone activation.
- **19:02 Caravel**
[Caravel](https://gitea.coracle.social/coracle/caravel), hodlbod's new hosting manager and dashboard for zooid relays, logged 40 commits this week in initial development.
- **20:15 Nymchat ships Marmot-powered group chats**
[Nymchat](https://github.com/Spl0itable/NYM) announced all new group chats now use the [Marmot](/en/topics/marmot/) protocol for MLS-encrypted messaging with [NIP-17](/en/topics/nip-17/) fallback. The v3.55 and v3.56 series fixed group chat edge cases, patched an XSS vulnerability, and added keyword/phrase blocking. This makes Nymchat another Marmot client joining White Noise and OpenChat.
### Releases
- **21:28 Calendar by Form* v1.0.0**
[Calendar by Form*](https://github.com/formstr-hq/nostr-calendar) reached [v1.0.0](https://github.com/formstr-hq/nostr-calendar/releases/tag/v1.0.0) with private calendar lists using encrypted kind `32123` events with [NIP-44](/en/topics/nip-44/) self-encryption, ICS intent handling, and invitation requests.
- **22:08 Amber v5.0.2 through v5.0.4**
[Amber](https://github.com/greenart7c3/Amber) shipped three point releases adding mnemonic recovery phrase login, a [NIP-42](/en/topics/nip-42/) relay auth whitelist, and encryption scope selection for decrypt permissions. v5.0.4 fixes scoped permission handling and improves bunker request performance.
- **24:24 Aegis v0.4.0**
[Aegis](https://github.com/ZharlieW/Aegis) shipped [v0.4.0](https://github.com/ZharlieW/Aegis/releases/tag/v0.4.0) with Full and Selective authorization modes, QR-scanning fixes, batch select controls, and per-permission usage statistics.
- **24:45 Schemata v0.2.7 through v0.3.0**
[Schemata](https://github.com/nostrability/schemata) shipped four releases with 21 merged PRs. v0.3.0 brings pattern consistency fixes across relay URLs, hex IDs, MIME types, and BOLT-11 strings, NIP-19 bech32 base type schemas, and kind 777 spell event validation. The release pipeline now publishes a kind `1` note on each release. Schemata now supports 12+ languages beyond JS/TS.
- **26:52 BigBrotr v6.5.0 through v6.5.4**
[BigBrotr](https://github.com/BigBrotr/bigbrotr) shipped five releases with centralized relay URL validation, geohash location tags for announcement events, [NIP-66](/en/topics/nip-66/) timeout protection, and a PostgreSQL 16 to 18 upgrade.
- **30:09 Vertex Lab relay adds NIP-50 profile search**
[Vertex Lab](https://vertexlab.io) announced `wss://relay.vertexlab.io` now supports [NIP-50](/en/topics/nip-50/) profile search, combining full-text user discovery with existing Web of Trust data.
- **30:50 Hashtree v0.2.17 and v0.2.18 ship WebRTC mesh and Iris Desktop**
[Hashtree](https://github.com/mmalmi/hashtree) shipped two releases adding WebRTC peer-to-peer blob distribution, Windows build artifacts, and Iris Desktop 0.1.0 bundled as AppImage, .deb, and Windows installer.
- **32:01 Nostr Mail Client v0.7.0 through v0.7.2**
[Nostr Mail Client](https://github.com/nogringo/nostr-mail-client) shipped three releases with onboarding, profile editing, and fresh Android and Linux builds.
- **32:30 Wisp v0.14.0 through v0.16.1**
[Wisp](https://github.com/barrydeen/wisp) shipped 13 releases with NIP-17 rumor JSON fixes, repost badges, expandable reaction details, persistent emoji sets, and video autoplay controls.
- **33:49 Primal Android 3.0.17**
[Primal Android](https://github.com/PrimalHQ/primal-android-app) shipped [3.0.17](https://github.com/PrimalHQ/primal-android-app/releases/tag/3.0.17) with [NIP-47](/en/topics/nip-47/) structured error codes, a poll zap vote fix, and wallet balance visibility fix.
- **34:19 OpenChat v0.2.4 through v0.3.0**
[OpenChat](https://github.com/DavidGershony/openChat) shipped six releases adding [NIP-42](/en/topics/nip-42/) relay auth, voice message controls (pause, resume, seek), Amber connection fixes, AES-256-GCM secure storage on Linux/macOS, and [NIP-65](/en/topics/nip-65/) relay discovery with local metadata caching.
- **35:14 Igloo Signer 1.1**
[Igloo](https://github.com/FROSTR-ORG/igloo-ios-prototype) shipped [v1.1](https://github.com/FROSTR-ORG/igloo-ios-prototype/releases/tag/v1.1), the iOS [FROST](/en/topics/frost/) threshold signer from the FROSTR project. FROST signatures let a group of signers collectively control a Nostr keypair where any t-of-n participants can sign without any single party holding the full key.
- **36:23 nak v0.19.3 and v0.19.4**
[nak](https://github.com/fiatjaf/nak) shipped two releases fixing panic conditions in string splitting and curl flag parsing.
- **36:34 Flora v0.3.0**
[Flora](https://github.com/shawnyeager/flora-extension) shipped [v0.3.0](https://github.com/shawnyeager/flora-extension/releases/tag/v0.3.0) adding private encrypted video sharing with AES-256-GCM via [NIP-17](/en/topics/nip-17/).
- **37:04 YakiHonne Mobile 2.0.3**
[YakiHonne](https://github.com/YakiHonne/mobile-app) shipped [2.0.3](https://github.com/YakiHonne/mobile-app/releases/tag/YakiHonne-2.0.3) with relay reviews, nested replies, auto-translation, and NWC multi-relay support.
### Project Updates
- **37:31 Zap Cooking adds zap polls and Branta payment verification**
[Zap Cooking](https://github.com/zapcooking/frontend) merged 11 PRs adding zap polls (kind 6969) and [Branta](https://branta.pro/) payment destination verification with camera-based QR scanning.
- **38:13 diVine lays groundwork for unified search and hardens video delivery**
[diVine](https://github.com/divinevideo/divine-mobile) added a unified search screen foundation, shared pagination controller, video delivery retry with fallback to raw blobs, and resumable upload recovery.
- **38:39 Shopstr adds custom storefronts and Milk Market keeps shipping marketplace work**
[Shopstr](https://github.com/shopstr-eng/shopstr) added custom storefronts. [Milk Market](https://github.com/shopstr-eng/milk-market) continued with storefront optimizations, account recovery, and beef splits.
- **41:21 Notedeck adds sound effects and extends its updater path toward Android**
[Notedeck](https://github.com/damus-io/notedeck) added a sound effects subsystem and Agentium CLI updates. An open PR proposes APK self-update via Nostr/Zapstore on Android.
- **41:53 Nostria adds repost relay hints and NIP-98 alignment**
[Nostria](https://github.com/nostria-app/nostria) added [NIP-18](/en/topics/nip-18/) repost relay hints, aligned HTTP auth with [NIP-98](/en/topics/nip-98/), and added Schemata validation tests.
- **43:20 Nostr-Doc adds desktop packaging and offline-first work**
[Nostr-Doc](https://github.com/formstr-hq/nostr-docs) added desktop app packaging, native app work, offline-first behavior, and Ctrl+S save.
- **43:59 rust-nostr optimizes NIP-21 parsing and adds relay-side NIP-62 support**
[rust-nostr](https://github.com/rust-nostr/nostr) optimized NIP-21 URI parsing and has four open PRs adding [NIP-62](/en/topics/nip-62/) support across memory, LMDB, SQLite, and database test backends.
- **44:20 nostr-tools adds bunker relay control and fixes NIP-47 multi-relay parsing**
[nostr-tools](https://github.com/nbd-wtf/nostr-tools) added `skipSwitchRelays` for manual bunker relay management and fixed [NIP-47](/en/topics/nip-47/) connection string parsing for multiple relays.
- **44:36 Nostrability integrates Sherlock audit data and publishes Schemata overview**
[Nostrability](https://github.com/nostrability/nostrability) merged 14 PRs integrating Sherlock scan statistics into the dashboard with per-client schema fail rates. elsat published a Schemata overview covering 179 event kind schemas across 65 NIPs.
- **46:04 Nalgorithm adds digest generation and local score caching**
[Nalgorithm](https://github.com/jooray/nalgorithm) started public development with a relevance-ranked feed, CLI digest tool for spoken-word summaries, and file-based score caching with incremental preference learning.
- **46:54 TENEX adds RAG vector store and targeted MCP startup**
[TENEX](https://github.com/tenex-chat/tenex) added a pluggable vector store (SQLite-vec, LanceDB, Qdrant), targeted MCP startup, and a proactive `send_message` tool for Telegram-bound agents.
- **48:21 Dart NDK moves Amber signer and adds Alby Go 1-click**
[Dart NDK](https://github.com/relaystr/ndk) moved Amber signer support into ndk_flutter and added Alby Go one-click wallet connection.
- **48:44 Marmot moves KeyPackages to addressable events and tightens push notifications**
The [Marmot spec](https://github.com/marmot-protocol/marmot) migrated KeyPackage events from regular `kind:443` to addressable `kind:30443`, allowed non-admin SelfRemove, required admins to relinquish status before departure, and tightened MIP-05 push notification wire format.
### NIP Updates
- **50:48 NIP-5A: Static Websites (PR #1538)**
Merged. Kind `15128` and `35128` manifest events for hosting static websites under Nostr keypairs using Blossom storage.
- **51:10 NIP-30: Custom Emoji**
Merged via [PR #2297](https://github.com/nostr-protocol/nips/pull/2297). Allows hyphens in shortcodes, documenting existing usage.
- **51:33 NIP-C1: Agent TUI Messages (PR #2295)**
Proposes structured message format for agents to send interactive UI elements (text, buttons, card, table) through encrypted DMs using existing [NIP-17](/en/topics/nip-17/) and [NIP-04](/en/topics/nip-04/) content as JSON.
- **51:58 NIP-95: Hybrid Peer-to-Peer Relay Protocol (PR #2293)**
Proposes relays coordinating peer-to-peer event distribution over WebRTC, with stable clients as Super Peers and the relay as seed node and fallback.
- **52:27 NIP-B9: Zap Poll Events (PR #2284)**
Reopens zap-poll idea with kind `6969` poll definitions and kind `9734` zaps as votes for economic Sybil resistance, complementing free NIP-88 polls.
- **52:49 NIP-AD: Super Zap (PR #2289)**
Proposes zaps to relay/client pubkeys displayed as promotional notes, turning zap receipts into an ad surface with minimum-sats spam thresholds.
- **53:16 NIP-XX: Agent Reputation Attestations (PR #2285)**
Proposes kind `30085` for structured reputation attestations with temporal decay, negative ratings with evidence, and graph-diversity Sybil resistance.
- **53:55 NIP-XX: Paid API Service Announcements (PR #2291)**
Proposes kind `31402` for advertising paid HTTP APIs with tags-first filtering and optional request/response schemas.
- **54:25 NIP-XX: Key Derivation from LNURL-auth via SplitSig (PR #2294)**
Proposes deriving a Nostr keypair from an LNURL-auth ECDSA signature combined with a client-side nonce, using the Lightning wallet as recovery anchor.
- **55:25 NIP-55: Document rejected field (PR #2290)**
Documents the `rejected` field for intent-based signer responses, formalizing the behavior Amethyst's v1.07.x fix had to work around.
### NIP Deep Dives
- **55:46 NIP Deep Dive: NIP-5A (Static Websites)**
[NIP-5A](https://github.com/nostr-protocol/nips/blob/master/5A.md) defines how kind `15128`/`35128` manifests map paths to SHA256 hashes, the three-part serving flow (host server, Blossom storage, author's signed manifest), DNS subdomain format with base36 encoding limited to 13-character `d` tags, and why any component (author, Blossom server, host server) is independently replaceable.
- **1:00:12 NIP Deep Dive: NIP-62 (Request to Vanish)**
[NIP-62](https://github.com/nostr-protocol/nips/blob/master/62.md) defines kind `62` for requesting full event deletion. Targeted requests use specific `relay` tags, global requests use `ALL_RELAYS`. Goes beyond NIP-09 in scope (everything vs. individual events) and strength (MUST comply vs. MAY comply). Includes gift wrap cleanup and sticky deletion preventing re-broadcast. Amethyst ships client-side support while rust-nostr has relay-side PRs open in the same week. The design resolves the censorship-resistance tension by limiting the request to self-directed deletion.
...more
View all episodesView all episodes
Download on the App Store

Nostr Compass PodcastBy Nostr Compass