After you click associate, it just redirects to a Keybase url which then redirects to the Keybase app/website as needed, it doesn’t get back to Discourse.
This is the skeleton of the plugin so far (I’ve only committed the files related with the new-proof page for now, plus a couple more files): GitHub - etamponi/discourse-keybase-proofs-plugin: Discourse Plugin for Keybase Proofs · GitHub
As you can see, this is the flow:
-
Keybase asks the user to go to
https://$DISCOURSE_SITE/keybase-proofs/new-proof?kb_username=bla&username=blabla&... -
Discourse checks if a user is logged in. If not, it redirects to the login page, then back to the new-proof page
-
Discourse shows the homepage with a modal on top which will show the association details and the associate/cancel buttons
I’ve still to code the rest of the flow, but I’d like to make sure that we agree on the design so far.