granary icon indicating copy to clipboard operation
granary copied to clipboard

Mastodon per-user feed support

Open jamietanna opened this issue 2 years ago • 9 comments

As discussed on #dev in chat, Granary right now can't support listing a server's posts in the outbox, so it'd be handy to have Bridgy Fed provide a means to filter down the feed to just a given user.

jamietanna avatar Feb 08 '23 14:02 jamietanna

Interesting! I'm a bit reluctant though. What I've found with granary and *-atom is that people often try to use them to follow lots of individual people on a given platform, often hundreds or thousands of accounts each, which turns them into large scale feed fetching platforms, which requires dedicated effort to scale that I'm not currently ready for.

I definitely get your use case of managing your per-person follows separately, to make sure you don't miss some of them! I don't know that I'm ready to support that use case broadly yet though.

snarfed avatar Feb 08 '23 19:02 snarfed

Oh! Looks like Mastodon actually serves these natively. They got accidently broken in 4.x, but that's been fixed, if maybe not released yet: https://github.com/mastodon/mastodon/issues/20770

In the meantime, you can get a single user's feed by appending .rss to their profile URL, eg https://indieweb.social/@jamietanna.rss

snarfed avatar Feb 08 '23 19:02 snarfed

Yes, that's a very fair reason to be reluctant to add this.

I'm considering that this could be implemented i.e. as https://fed.brid.gy/user/www.jvt.me/feed?user=https://todon.eu/@jalcine that'd just return Jacky's posts.

The RSS feeds don't include boosts, and have been pretty flakey from my experience

jamietanna avatar Feb 08 '23 19:02 jamietanna

Could this just be as simple as adding a check for feeds already present (i.e. putting the .rss at the end or any other common formats) and check of it "sticks" and do a regex action in the background so that's the link we end up with anyway? Then BF doesn't need to serve anything since we're just using the feed already there and making it more convenient to grab?

StarrWulfe avatar Feb 10 '23 04:02 StarrWulfe

@StarrWulfe hmm maybe! I'm not sure adding BF would make discovering Mastodon's own feeds specifically any easier overall, but feel free to outline a concrete UX flow and we can see if we think it's better.

Notably, once they release https://github.com/mastodon/mastodon/issues/20770, I think you'll be able to plug someone's Mastodon profile URL into your feed reader and it will Just Work, so I doubt we'll be able to improve on that.

snarfed avatar Feb 10 '23 15:02 snarfed

This ^ went out in Mastodon 4.1.0:

  • https://github.com/mastodon/mastodon/releases/tag/v4.1.0
  • https://github.com/mastodon/mastodon/compare/v4.0.4...v4.1.0

For example, https://todon.eu/@jalcine when fetched without rendering JS now includes this line:

<link href='https://todon.eu/@jalcine.rss' rel='alternate' type='application/rss+xml'>

and I've confirmed that you can plug https://todon.eu/@jalcine into an RSS reader and it works.

snarfed avatar Apr 16 '23 15:04 snarfed

Ah nice, so that'll work with folks who publish all public stuff, but if there are limited visibility posts/accounts it may not work

jamietanna avatar Apr 16 '23 15:04 jamietanna

True! Same with Bridgy Fed's feeds though, it drops all non-public posts.

(And you're still right from earlier here that these feeds don't include boosts.)

snarfed avatar Apr 16 '23 15:04 snarfed

Moved this from Bridgy Fed to granary. Also realistically it would be Mastodon-only, since AP in practice doesn't have a way to ask an arbitrary instance for a given user's posts. (It could be outbox, but that's optional, and in practice very few servers implement it like this.)

snarfed avatar Jun 18 '23 15:06 snarfed