I wonder if using Discourse as the auth provider gets overlooked because of its name (DiscourseConnect). For example, just adding the term DiscourseConnect to a post on here creates a link to the topic about using an external site as the auth provider for Discourse. Using Discourse as an auth provider is one of my main justifications for having a Discourse site.
In case it helps, the WordPress plugin allows Discourse to function as an auth provider. The relevant code is here: wp-discourse/lib/sso-client at main · discourse/wp-discourse · GitHub. The code might be somewhat overly complicated.
Here’s a more straighforward implementation for a Remix/React app: discourse_remix_comments/app/routes/login.tsx at main · scossar/discourse_remix_comments · GitHub. If you ignore the typescript stuff, there’s not much to it.