Build on Apna
Mini-apps run inside the Apna host, inherit the user's Nostr identity, and access social, signing, and storage via @apna/sdk. Choose a path to get started.
Download a starter
Get a pre-wired project skeleton — React + Vite, single HTML, or a guide for your existing app. @apna/sdk 0.3.2 is already configured.
Write in the browser
MonacoVS Code-powered editor with HTML/JS/CSS syntax highlighting, live preview, and one-tap publish to Nostr — no URL or hosting required.
SDK quick-reference
Bootstrap
const apna = new ApnaApp({ appId: 'my-app' })Active user
const me = await apna.identity.me()Publish note
await apna.social.publishNote('Hello!')Nostr query
const events = await apna.nostr.query({ kinds: [1] })Subscribe
const unsub = await apna.nostr.subscribe(filters, cb)