prose / gatekeeper

Enables client-side applications to dance OAuth with GitHub.
MIT License
760 stars 182 forks source link

Help with GitHub.js #56

Closed amaralDaniel closed 6 years ago

amaralDaniel commented 6 years ago

Hi there! I'm not fully understanding how to use Gatekeeper and github.js to provide OAuth authentication. Can anyone provide some thought or resource that can help to achieve it? I searched around and nothing insightful comes up.

dereklieu commented 6 years ago

Hey, there are some notes in #54. Github's own Oauth docs are probably the best starting point. Gatekeeper follows the web flow linked in that ticket. I'm sorry, I would love Gatekeeper to be an out-of-the-box solution for people who don't know anything about Oauth, but it's currently not set up for that, and you'll have to do some more homework.

Also pointing out that there's no github.js client library, instead of we use the Github API which provides access tokens.

amaralDaniel commented 6 years ago

I am considering github.js since it says in the Gatekeeper description. Is it cool to use it?

dereklieu commented 6 years ago

Oh you mean this github.js. Yeah it's cool, but not required to use with Gatekeeper, which just handles Oauth.

amaralDaniel commented 6 years ago

So I can handle Oauth with github.js alone?

danielo515 commented 6 years ago

So I can handle Oauth with github.js alone?

No you can't. You can use github.js to access public information of repositories. If the user provides you a token then you can have full access to all github features that token provides. If the user does not provide you with a token you will have to get one yourself, which is what gatekeeper is for. Github does not allow oauth flow to be executed from client side code (web app) and because that reason and for easing the process gatekeeper born.