Webrings as collective OAuth
This has been circling in my head for a while.
With a given ATProto application, it’s really nice to just do everything directly on the site you’re on. If you’re on Bluesky, you can just do Bluesky things. If you’re on PopFeed, same deal. Everything works in place.
But if you’re on something like a personal blog—say you’re me, using Bluesky comments as your comment section—it kind of works, but only halfway. You can pull in all the comments from Bluesky as the authoritative source. You can display them. That part is fine.
But it’s read-only.
Technically, the next step is obvious: implement OAuth on your site so users can log in and comment directly. But that means every single site owner has to reimplement OAuth. That’s a real burden. And from the user’s perspective, now you have to log into every independent blog view you land on.
Authentication isn’t hard, exactly. But it’s friction. And friction probably discourages people from actually taking the time to comment.
A thought about webrings
People already assemble their blogs into webrings. Some are part of one. Some are part of multiple.
I was thinking about how Leaflet handles authentication for sites that aren’t explicitly on leaflet.pub. I talked to @awarm.space about this, and they do this little dance to get OAuth working on member sites without forcing reauthentication. It’s clever.
And that got me wondering: what if webrings could act as a kind of collective OAuth?
Instead of logging into each individual site, you’d log into the webring. The webring would (ideally) trust its member sites enough to let them authenticate via that shared session. If someone belongs to multiple webrings, maybe there’s some mechanism where you check all of them and see if you’re logged into any.
I don’t know. I’m not sure if the mechanics of OAuth would even allow something like this. But it feels worth looking into. It would be really cool if it worked.
I like building tools, breaking workflows, and putting them back together better. If you enjoy my work and want to support it, you can buy me a coffee ☕ or support me on Liberapay 💛.