Here’s a project that was sponsored by a client recently that extends the Discourse OAuth2 Basic plugin.
The issue we were up against was that the Log In URL and the Sign Up URL each needed to be different, whereas the base plugin uses the same authorization URL for both. All this plugin does is add a setting ('oauth2_signup_url`) and uses that URL for the Sign Up button, which allows both buttons to go to different places.
Repo: GitHub - procourse/discourse-oauth2-custom-redirects-plugin