{"podcast":{"title":"No Solutions","slug":"no-solutions-7206062","podcast_index_feed_id":7206062,"rss_url":"https://sovereignengineering.io/dialogues.xml","website_url":"https://sovereignengineering.io/podcast","image_url":"https://haven.sovereignengineering.io/29995d6f3c18f5cd881519e08a34292ccbd2f0996df288e9b125dea69d259eee.jpg","author":"gigi@sovereignengineering.io (Gigi)","episode_count":31,"summary":"No solutions, only trade-offs. Walking towards a better internet through freedom tech, open protocols, and sovereign engineering.","last_synced_at":"2026-07-23T10:21:20.446592+00:00","page_url":"https://stenobird.com/podcast/no-solutions-7206062"},"episode":{"title":"30: Napplets w/ Sandwich","slug":"30-napplets-w-sandwich","published_at":"2026-07-22T22:58:58+00:00","page_url":"https://stenobird.com/podcast/no-solutions-7206062/30-napplets-w-sandwich","show_page_url":"https://stenobird.com/podcast/no-solutions-7206062","url":"https://njump.to/nevent1qqs00erj743c3ylnkuaplkjjygv83872vryhepepaeldekjd3e30kvqpzamhxue69uhksctkv4hzuer9wfnkjemf9e3k7mgpzemhxue69uhhyetvv9ujuurjd9kkzmpwdejhgqgdwaehxw309ahx7uewd3hkcyt0pjv","audio_url":"https://haven.dergigi.com/e2261870d0eb338d6c4907b82d3cf7a51cb420a3907198124cbb368015de0b19.m4a","summary":"&quot;You should be able to compose your clients.&quot; Sandwich &amp; Gigi take a walk. Listen on sovereignengineering.io Sandwich and Gigi spend the first 45 minutes or so talking through napplets: composable, sandboxed Nostr apps that can run inside a host shell while the host mediates signing, storage, relay access, uploads, permissions, and user trust. What starts as a conversation about applets quickly becomes an operating-system conversation: if Nostr is flexible enough to carry many kinds of software, clients probably need to become composable runtimes instead of monolithic apps. Along the way they get into browser sandboxes, iframes, postMessage, malicious applets, Blossom uploads, NIP-5D, nsites, specialized relays, agent workflows, slop scanning, and why the AI subsidy era will not last forever. In this dialogue: why a normal Nostr client can feel too restrictive for a protocol built around maximum flexibility how napplets grew out of earlier experiments with Naps, Nap.run, nsites, Hyprland -inspired desktops, Tauri , Thorium , and iframe hardening why the host runtime handles keys, signing, encryption, relays, resource loading, storage, uploads, and user prompts why napplets should get high-level helper APIs plus low-level escape hatches instead of direct access to everything how a napplet can upload through Blossom without knowing which Blossom server the user prefers why the shell should see plaintext over the message bus, and how that helps defend users from malicious applets how applet-to-app communication starts to look like Android intents, MIME types, archetypes, and operating-system resource APIs why the browser is a practical deployment target even if the napplet protocol itself is not browser-bound what Kehto, Paja, the napplet dev tooling, and th…","meta_description":"\"You should be able to compose your clients.\" Sandwich & Gigi take a walk. Listen on sovereignengineering.io Sandwich and Gigi spend the fir…","key_points":[],"chapters":[],"topics":[],"duration_seconds":5865,"processing_state":"not_requested","actions":[{"name":"request_transcript","method":"POST","url":"https://stenobird.com/v1/public/podcasts/no-solutions-7206062/episodes/30-napplets-w-sandwich/transcription-requests","description":"Idempotently request low-priority transcript generation for this episode."},{"name":"read_markdown","method":"GET","url":"https://stenobird.com/podcast/no-solutions-7206062/30-napplets-w-sandwich.md","description":"Read the agent-friendly Markdown representation of this episode resource."}]}}