Claude 776b9af152 fix: resolve NIP-17 crashes and conversation key inconsistencies
Critical Fixes:
1. Fixed crashes from non-DM gift wraps (reactions, private relays, etc.)
   - Only use getConversationIdentifierFromMessage() for kind 14 DMs
   - Manual conversation key generation for other kinds (7, 25050, etc.)
   - No more "Can only get participants from direct message event" errors

2. Fixed chat $me (saved messages) not loading any messages
   - Deduplicate pubkeys in getConversationKey() method
   - Self-conversations now correctly map to same key as stored messages
   - Conversation key "user:user" → "user" after deduplication

3. Added participant tooltip for group DMs
   - Shows all participant names when hovering over group title
   - Only displays for groups with 3+ participants
   - Deduplicates participant list properly

Technical Details:
- Kind 14 (DMs): Use applesauce getConversationIdentifierFromMessage()
- Other kinds: Extract p-tags manually and sort
- All conversation keys deduplicated and sorted for consistency
- Matches storage format from gift-wrap service
2026-01-20 16:48:50 +00:00
2025-12-18 15:46:02 +01:00
👶
2025-12-09 16:26:31 +01:00
2025-12-19 12:49:29 +01:00
2025-12-13 15:06:05 +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-09 16:26:31 +01:00
👶
2025-12-09 16:26:31 +01:00
👶
2025-12-09 16:26:31 +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%