[Draft] feat(nostr-feed): Reddit-style link aggregator #9

Closed
padreug wants to merge 19 commits from feature/link-aggregator into main
Owner

Summary

Transform the nostr-feed module into a Reddit/Lemmy-style link aggregator with:

  • Link posts - External URLs with Open Graph previews
  • Media posts - Images/videos with inline display
  • Self posts - Text/markdown content
  • Threaded comments - Recursive comment trees with colored threading lines
  • Voting - Upvote/downvote with NIP-25 reactions (+/-)
  • Sorting - Hot, new, top (with time range), controversial

NIP Compliance

  • NIP-72: Moderated Communities (kind 34550)
  • NIP-22: Comments (kind 1111)
  • NIP-92: Media Attachments (imeta tags)
  • NIP-25: Reactions (upvote/downvote)

Phases Completed

  • Phase 1: Core Data Model
  • Phase 2: Post Creation (except pictrs integration)
  • Phase 3: Feed Display
  • Phase 4: Detail View

Future Work

  • Pictrs media upload integration
  • Phase 5: Communities (CommunityService, browser, moderation)

Test plan

  • Verify feed displays submissions with voting controls
  • Test upvote/downvote persistence across page refresh
  • Test comment creation and threading
  • Test inline reply forms
  • Verify theme-aware styling (light/dark mode)
  • Test sort options (hot, new, top with time range, controversial)

🤖 Generated with Claude Code

## Summary Transform the nostr-feed module into a Reddit/Lemmy-style link aggregator with: - **Link posts** - External URLs with Open Graph previews - **Media posts** - Images/videos with inline display - **Self posts** - Text/markdown content - **Threaded comments** - Recursive comment trees with colored threading lines - **Voting** - Upvote/downvote with NIP-25 reactions (`+`/`-`) - **Sorting** - Hot, new, top (with time range), controversial ### NIP Compliance - NIP-72: Moderated Communities (kind 34550) - NIP-22: Comments (kind 1111) - NIP-92: Media Attachments (imeta tags) - NIP-25: Reactions (upvote/downvote) ### Phases Completed - ✅ Phase 1: Core Data Model - ✅ Phase 2: Post Creation (except pictrs integration) - ✅ Phase 3: Feed Display - ✅ Phase 4: Detail View ### Future Work - [ ] Pictrs media upload integration - [ ] Phase 5: Communities (CommunityService, browser, moderation) ## Test plan - [ ] Verify feed displays submissions with voting controls - [ ] Test upvote/downvote persistence across page refresh - [ ] Test comment creation and threading - [ ] Test inline reply forms - [ ] Verify theme-aware styling (light/dark mode) - [ ] Test sort options (hot, new, top with time range, controversial) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
padreug force-pushed feature/link-aggregator from c4a62552cc to 7f4b1f1e9e 2026-01-03 07:55:18 +00:00 Compare
Author
Owner

Closing this PR - the link aggregator work (Phases 1-4) has been ported from the atio branch into an independent links module on cfaun (commit 8176ea9).

The remaining items (pictrs media upload, communities/moderation) are tracked in #13.

Closing this PR - the link aggregator work (Phases 1-4) has been ported from the `atio` branch into an independent `links` module on `cfaun` (commit 8176ea9). The remaining items (pictrs media upload, communities/moderation) are tracked in #13.
padreug closed this pull request 2026-03-28 02:37:48 +00:00

Pull request closed

Sign in to join this conversation.
No description provided.