bonfire-networks/bonfire-app

Refactoring Feed logic and unify how feeds are handled across different extensions

Opened this issue · 1 comments

Rationale

We've included lot of options, filters and sorting in feed, but part of the logic is still implemented separately for each feed ( pagination, filtering, etc)...

By refactoring the feed logic we may end up with just one feed - and the possibility to apply any filter or sorting options to that feed programmatically or defined by user. This would make the feed much more maintanable and less bugs prone. We would end up with one main feed and the eventual possibility for users or devs to define custom feeds and add them in the navigation sidebar.

Custom feed would basically be presets of filters & sorting options applied to the [same] feed (Eg. show only local media activities, filtered by Link, sorted by most replied to show the instance most discussed links, etc. ) and by default those wouldn't be pre-loaded / cached in background.

To enable this we need to add filters for all of these, add them to the feed filter widget, and then deprecate the separate feed views:

  • my feed
  • explore/local/fediverse
  • liked
  • bookmarked
  • media (and sub-filters likes publications, links, images, etc)
  • tagged with a particular hashtag or topic (or several)
  • user profile feeds (see stretch goals of #901)

Need also to fix duplicated id issue