Github Badges are not working. Its hard to see if I do something wrong or if the plugin is not working

Sorry for the delay in answering your question. I am testing the plugin now by configuring it following this guide: https://meta.discourse.org/t/discourse-github/99895.

One difference between the guide and the plugin’s README is that the guide says that a GitHub access token needs to be generated for badges to be granted. That access token needs to be added to your site’s github linkback access token setting before badges will be granted.

To create an access token, go to https://github.com/settings/tokens/new. If you are only using the token for granting badges, you should not need to select any scopes. Just scroll to the bottom of the page and click the Generate Token button.

The other thing that needs to be set for badges is the github badges repo site setting. Enter the full URL of each of your Github repositories that you would like badges to be granted for. The URL that you see in your browser’s address bar will work for this.

The plugin creates 6 badges:

  • Contributor
  • Great contributor
  • Amazing contributor
  • Committer
  • Frequent committer
  • Amazing committer

The first three badges in the list are enabled when they are created by the plugin. The last three badges in the list need to be manually enabled from your Admin / Badges page.

The number of commits required for the Frequent committer and Amazing committer badges can be set with the github silver badge min commits and github gold badge min commits site settings.

One last thing to note about the badges is that they are granted through a background job that is run every 4 hours. This means that you can expect up to a 4 hour delay from the time the user was active on Github and the time they are granted the badge.

Users are found based on the email address of the Github commit. For most cases, this will be the user’s email address. For users who have configured git to use the Github no-reply email address (<username>@users.noreply.github.com), the plugin attempts to find the user based on the username part of that email address. It does this by searching the Discourse GithubUserInfo table for a username match. Users will only be found in this way if they have previously logged into Discourse via Github.

I am also looking at the plugin’s linkback functionality. I will update the plugin’s README and the plugin’s guide on Meta very soon.

If you are configuring the plugin on a site that we host, you can get private support for this by sending an email to the support address that is given on your site’s admin dashboard.

3 Likes