Post

@thisismissem.social @divy.zone and I recently went through an exploration of how the browser can help you login to websites with atproto accounts. We recently presented to the FedID CG and here is a sneak peek in case you couldn't join! This is early but we'd love your input before we go too far!

51 reposts279 likes

i don't entirely know the relevance, but gonna tag in @scottlanoue.com here, who has Android OS identity integration underway too. similar problem space ish, from the OS side. bsky.app/profile/scot...

Scooty@scottlanoue.com

I thought we needed a custom ROM to see the benefits of an Atmosphere OS, but @astrra.space showed me how we could accomplish the same with stock Android

Personally I would hate this, it needs to be like the suggested "sign in with google" popup top right corner that doesn't make the website uninteractive and luminosity low, cause I dont wanna sing in on all websites, This is immense friction, many webapps have unauthenticated user as native citizen.

Also I hate how its ONLY Atproto pds, it needs to have all the options, google too! And also I hate how you can only choose between those listed pds providers when no account, it simply puts bsky, blacksky, tangled or watever pds provider there an unfair advantage and monopoly, Conclusion: Disliked

FedCM is already available! This is an extension to it that could ship if it finds product market fit (but if).

First, the happy case scenario, logging in to a website with your atproto account, say lealeft.pub. This is a good end state prompt: one that shows every atproto account you are logged in to (most users would only have one) and allows the user to select one.

Here, leaflet.pub is able to accept both "listed IdPs" (in this case, bluesky, blacksky) as well as "registered IdPs" (in this case, elisabecket.com). The difference between the two is that while the former is enumerated/anticipated by the relying party, the latter is indicated by the user.

The former is important because it allows the relying party to reuse the existing network effects of established IdPs. The latter is critical because in an open federation such as atproto it is impossible for the relying party to enumerate every atproto PDS that exists. But how?

By clicking on "Add another account" in the first prompt. When that happens, the browsers open an account selector, that allows you to add more accounts for "listed IdPs" but also to type your own (the same way you type an email address in an input box).

why does this say "Sign up" to Leaflet.pub instead of "Sign in" to Leaflet.pub? I assume with this screen you're using your already-connected atproto handles in FedCM to log in to a site like Leaflet, not signing up for Leaflet as a PDS, right?

Good question. I think the distinction here is that you are creating an account on leaflet (rather than logging in to one). Not sure if that's a meaningful distinction but that was the intent. Wdyt?

when I use Leaflet, I don't think of using it as requiring me to have to create a "Leaflet account", but instead that Leaflet uses my "Atmosphere account" (my DID and handle) to identify me, and can associate data with that identity if it wants (like profile information or settings)

The issue is, if I may say, also a marketing one. We need something akin to Sign in with your “Atmo” account (or any other nomenclature used everywhere) so every person who has no clue what a PDS is but has a Bluesky account will know what to do.

I think this is where @kandake.africa 's suggestion to allow a federation to control the messaging could play a role: bsky.app/profile/sgo....

Sam Goto@sgo.to

I did factor in your suggestion in the last snapshot of the explainer!! github.com/w3c-fedid/id... I think having `type` be a URL is a wonderful idea!

Oh cool! I won't pretend to have understood everything I read, but as long as we can nail the branding aspect, we'll be able to sell the benefits of an account on the atmosphere to a broader public.

Oh excellent, I'll read through it tomorrow! One reason I was so strong on the branding part is there are platforms like hypercerts where users have absolutely no clue it's on atprotocol and they want to keep it that way.

The UI looks super cool but I'm curious about the technical side. Are there existing standards that can be used to implement this or are we talking about creating new browser APIs?