Custom GitHub tab with own extension

I am making an extension for github.
I already created extension for VSTS.

enter image description here

My goal – write extension that adds some custom tab with own functionality.

enter image description here

Github guide explains that I can create “github app” that will send to my webhook server all changes that I subscribed them. But nothing about new functionality on their site in difference that VSTS.

I installed extensions of other developers that add this custom tab. But they all required installation of chrome extension.

Do I need to develop chrome extension that adds this tab on github.com pages.
Or Is there other ways to implement this?

Authenticate Github app through chrome extension

I built a chrome extension which uses the Github API so I need an access token to avoid the rate limits. I don’t need the authentication for anything else. The examples I read always included the client secret (even a chrome extension example ) but I can’t included it for obvious reasons. What’s the default process to resolve this issue? I’m new to both Chrome extension and Github Auth so every resource on the topic is appreciated.

chrome extension – how does Zenhub sync data with other members in the same repo?

I am making an extension for github. And I want to sync data with other people at the same repo.

For example, in Zenhub, the pipelines of a board is synced automatically with other members. In other words, if I remove Back log, other members can’t see the Back log pipeline in their board.
enter image description here

How can I implement that? I can’t find any answers about this.

Can I authenticate a user from a Chrome Extension via their Github account without a backend server?

I am writing a Chrome extension^ and want allow users to authenticate via their Github account (targeting developers). I don’t want to setup a back-end server just for authentication, because all functionalities work perfectly offline within a browser.

I have done some research. It seems that there are two options to implement OAuth without your own backend server:

  1. Implicit grant (which github does not support?)
  2. Use some other services (e.g. Auth0)

My questions are:

  1. Can I authenticate a user via their Github account without any backend server?
  2. If I have to what does the authentication flow look like?

^ the tool without the authentication feature can be found here.

Github Oauth using Chrome Web apps issue

I’m trying to authenticate to github using my Chrome web app.

When I click on the button, I get the callback and I get this error in console.

Unchecked runtime.lastError while running identity.launchWebAuthFlow:
The user did not approve access.

popup.js

var githubButton = document.getElementById('github');
githubButton.addEventListener('click', function() {
    var CLIENT_ID = "da1d7c12a3ab20decba5";
    var CALLBACK_URL = chrome.identity.getRedirectURL("oauth2");
    var AUTH_URL = 'https://github.com/login/oauth/authorize/?client_id='+CLIENT_ID+'&redirect_uri='+CALLBACK_URL+'&scope=notifications';
    // Opens a window to initiate GitHub OAuth, fires callback
    // with token in the URL.
    chrome.identity.launchWebAuthFlow({
        url: AUTH_URL,
        interactive: true,
    }, function(redirectURL) {
        var q = redirectURL.substr(redirectURL.indexOf('#')+1);
        var parts = q.split('&');
        for (var i = 0; i < parts.length; i++) {
            var kv = parts[i].split('=');
            if (kv[0] == 'access_token') {
                token = kv[1];
                console.log('token is', token);
            }
        }
    });
}, false);

Manifest.json

  "permissions": [
    "cookies",
    "activeTab",
    "identity",
    "storage",
    "*://*.github.com/*"
   ],

index.html


Not really sure where I'm going wrong 🙁 Please kindly enlighten me!

I just want to get to access_token so that I can do some POST requests.