feat(reactions): Add support for author reactions #26

Merged
blacklight merged 8 commits from feat/25/author-reactions into main 2026-03-14 21:45:30 +01:00
Owner

Closes #25

Closes #25
- Document storage layout, routing, threading, anchors, and federation
- Add per-phase implementation notes and deferred follow-ups
- Document like-of metadata approach and federation considerations
- Add plan for Like/Undo, indexing, rendering, and tests
Plumb like-of from parsed metadata into templates for pages and replies
- Build/load JSON index from replies and update via ContentMonitor
- Expose author_likes to page and reply templates during render
- Add unit tests for scan, persistence, and change handling
- Add CSS for outgoing like footer and author-liked indicator
- Render like-of footer and liked-by-author badge in article/reply
  templates
- Add template rendering tests for author reactions
feat(activitypub): Publish Like activities from like-of metadata
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
04c467422a
- Track Like activity IDs in file_urls using a #like suffix
- Publish Like/Undo Like for articles and replies on add/edit/delete
- Skip Note publishing for standalone reply likes (no reply-to, no content)
- Extend tests and thread join helper for ap-like-* threads
feat(activitypub): Serve Like activity JSON for standalone likes
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
864aa61788
- Detect like-only replies in AP content negotiation and return Like activity
- Add helper to build/reuse Like activity doc (incl. stored Like id + redirect)
- Add tests for standalone like vs note behavior
fix(activitypub): include liked object in Undo Like activities
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
114c2fee5d
Without that, Mastodon servers can't properly match the event and
likes/boosts cannot be undone.

- Persist like object URL alongside Like id for articles and replies
- Add object to inner Like when publishing Undo to satisfy remote servers
- Extend tests to assert Undo Like contains the original object URL
blacklight changed title from WIP: feat(reactions): Add support for author reactions to feat(reactions): Add support for author reactions 2026-03-14 21:44:46 +01:00
blacklight deleted branch feat/25/author-reactions 2026-03-14 21:45:30 +01:00
Sign in to join this conversation.
No description provided.