Claude 9bf66c0fd2 feat(chat): add Communikey fallback for NIP-29 groups
Implements Communikey chat support as a fallback for NIP-29 groups where:
- Group ID is a valid pubkey (64-char hex)
- Pubkey has published kind 10222 (community definition)
- Chat works regardless of content sections (assumes chat is supported)

Key changes:
- Add Communikey protocol to chat types with CommunikeyIdentifier
- Create CommunikeyAdapter extending ChatProtocolAdapter
  - Fetches kind 10222 (community definition) and kind 0 (profile)
  - Uses r-tags for multi-relay support (main + backups)
  - Community pubkey acts as admin, members derived from chat participants
  - Client-side moderation only (no relay enforcement)
- Update chat parser to detect Communikey via kind 10222 lookup
  - Made parseChatCommand async for fallback detection
  - 2-second timeout for quick detection
- Add kind 10222 feed and detail renderers
  - Feed renderer shows community card with name, description, content sections, relay count
  - Detail renderer shows full metadata, content sections, relays, features
- Register Communikey adapter in ChatViewer getAdapter

Technical notes:
- Uses same kind 9 messages with #h tag (compatible with NIP-29 format)
- No join/leave semantics (open participation)
- Bookmark/unbookmark actions use kind 10009 group list
- Multi-relay subscriptions for messages
2026-01-20 12:11:51 +00:00
2025-12-18 15:46:02 +01:00
2025-12-19 12:49:29 +01:00
2025-12-22 20:40:16 +00:00
2025-12-20 14:25:40 +01:00
2026-01-14 19:24:37 +01:00
2025-12-14 16:50:16 +01:00

Grimoire

A Nostr protocol explorer and developer tool with a tiling window manager interface.

Features

  • Tiling Windows - Each window is a Nostr "app" (profile viewer, event feed, NIP docs, etc.)
  • Command Palette - Unix-style commands via Cmd+K to open apps and navigate
  • Multi-workspace - Virtual desktops with independent layouts
  • Real-time - Reactive event subscriptions with automatic updates

Stack

React 19, TypeScript, Vite, TailwindCSS, Jotai, Dexie, Applesauce

Getting Started

npm install
npm run dev

Scripts

Command Description
npm run dev Start dev server
npm run build Build for production
npm test Run tests in watch mode
npm run lint Lint code
npm run format Format code

License

MIT

Description
No description provided
Readme MIT 14 MiB
Languages
TypeScript 98.9%
CSS 0.8%
JavaScript 0.3%