bookwyrm-social / bookwyrm

Social reading and reviewing, decentralized with ActivityPub
http://joinbookwyrm.com/
Other
2.26k stars 265 forks source link

RSS feeds for filtered activities #2871

Open si opened 1 year ago

si commented 1 year ago

Is your feature request related to a problem? Please describe. I love that you can append /rss to the user profile URL to get all activities as an RSS feed but I can't limit it to specific activity types (such as finished reading).

Describe the solution you'd like Could the RSS output be applied to all filtered activities with the /rss suffix to access? e.g. https://ramblingreaders.org/user/si/books/read/ could provide RSS version at https://ramblingreaders.org/user/si/books/read/rss

Describe alternatives you've considered Filtering the existing RSS feed https://ramblingreaders.org/user/si/rss by the item summary, e.g. posts beginning with "Review of".

Additional context I want to syndicate the content to other platforms but not ALL activity, just a subset to reduce the noise and duplicates for books. I plan to import to my Wordpress blog which would be quite straight forward with tools like Zapier or IFTTT.

mattkatz commented 1 year ago

Interesting - I just did a teeny bit of digging and I see from https://github.com/bookwyrm-social/bookwyrm/issues/785#issuecomment-1416534896 that there is a paginated json version of the data. So then we'd need to add a path to say any sub shelf of a user needs to recognize a .rss extension to the url and then in the rendering section see if the rss template works for that subset of data.

This does seem like a good first issue!

mattkatz commented 1 year ago

I'm gonna take a run at this one - I'd like to get an rss list of books on my to-read bookshelf.

mattkatz commented 1 year ago

I've added a PR that I think implements RSS for shelves, but I'm having trouble getting the test case to work. My stumbling block is that I'm getting redis errors, which I think result from me not mocking enough stuff to prevent the addition of the test book to a test shelf from being published to redis.