No description
- TypeScript 93.8%
- CSS 5.8%
- HTML 0.4%
Reactions were loaded and matched by the workshop #t tag, so reactions (and reply-reactions) made from other Nostr clients never appeared in "Alle" mode. Source reactions by their NIP-25 e-reference to the notes on screen instead, via a new reactionsFilter and an ensureReactions subscription mirroring the existing profile-loading pattern. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| docs/superpowers | ||
| public/emoji | ||
| src | ||
| .gitignore | ||
| Build-Spec_Nostr-Mini-App_Workshop.md | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
| vitest.config.ts | ||
Nostr Mini-App — Jugend Hackt 2026
A minimal real Nostr client for the workshop. Create an identity, scan friends' QR codes, post short notes, watch a live timeline.
Develop
npm installnpm run dev:https(camera/QR need a secure context)npm test(unit tests for pure logic)
Configure
src/config.ts:RELAY_URL(defaultwss://relay.edufeed.org) andWORKSHOP_TAG.
Build & deploy
npm run build→ static files indist/.- Serve
dist/over https (homelab). Must be https for the camera scanner. - Project the app URL as a QR on the beamer during the workshop.
Workshop notes
- Throw-away identities; posts are public and persist on the relay.
- Only harmless example content (audience 13–18).