shakespeare.diy 149a1cf6e5 Add comprehensive mute settings with NIP-51 and encrypted content filters
- Implement useMuteList hook for NIP-51 mute lists (kind 10000)
  - Support for muting users, hashtags, words, and threads
  - Public and encrypted private mute items using NIP-44
  - Automatic normalization of npub/note identifiers
  
- Implement useContentFilters hook for encrypted client-side filters (NIP-78)
  - Advanced filtering with custom rules (kind, content, tags)
  - Multiple operators (equals, contains, regex, etc.)
  - Stored as encrypted kind 30078 events
  
- Add MuteSettingsPage with full UI
  - Tabbed interface for mute lists and content filters
  - Add/remove mutes with public/private toggle
  - Create custom filters with multiple rules
  - Collapsible sections for organized viewing
  
- Add utility functions for applying mutes
  - isEventMuted() checks if event should be filtered
  - filterMutedEvents() applies mutes to event arrays
  - getMuteSummary() provides mute statistics
  
- Add /mutes route to AppRouter

Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
2026-02-18 03:16:53 -06:00
2026-02-16 16:54:01 -06:00
2026-02-16 16:54:01 -06:00
S
Description
Activist social network and fundraising platform on Nostr
AGPL-3.0 43 MiB
Languages
TypeScript 95.7%
Java 1.5%
JavaScript 0.9%
Swift 0.9%
CSS 0.5%
Other 0.4%