{"action":"created","comment":{"url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/comments/93058637","pull_request_review_id":13579842,"id":93058637,"diff_hunk":"@@ -0,0 +1,581 @@\n+[Back to Main README](../README.md)\n+\n+# Full GitHub Authorization with the `torii-provider`\n+\n+This guide walks through the process of authenticating and authorizing an Ember app with\n+and for use against GitHub using `ember-simple-auth` and `torii` including a registered\n+GitHub application, an unauthenticated login route, an authenticated content route, an\n+AWS Lambda-based token exchange service, and use of an authorizer to inject the token\n+into requests. We'll use the [ember-data-github](https://github.com/elwayman02/ember-data-github)\n+addon so we don't need to create our own GitHub models, serializers, and adapters.\n+\n+While most of the pieces are documented in the `ember-simple-auth` and `torii`\n+documentation, putting them together properly for the particular scenario has not been\n+fully documented to date. Additionally, many of the sources on the general internet are\n+helpful but dated or incomplete.\n+\n+This guide assumes you know how to start an Ember app and are familiar with the various\n+files and concepts.\n+\n+## Registering your app with GitHub\n+\n+Go to your GitHub Settings, choose `OAuth Applications`, and press the `Register a new\n+application` button. Fill in the fields similar to the following.\n+\n+![Registering an OAuth Application with GitHub](./assets/github-registering-oauth-application.png)\n+\n+You will likely want to register different application keys for different deployment stages\n+because of the differences in the `Authorization callback URL`.\n+\n+Once you register your application, you will have a chance to add an application logo.\n+Most importantly, you will be given a client ID and a client secret. _The client secret is\n+a password and should be protected as such!_ You will use the client ID in your web\n+application and the client secret in your back end token exchange service.\n+\n+## Authenticating the Ember app\n+\n+OAuth is officially an authorization protocol, but is commonly used also for\n+authentication when the initial authorization code is obtained over `https`. GitHub uses\n+the OAuth authorization code grant type, which requires two steps. The first step uses\n+your client ID to get a temporary authorization code. The temporary authorization code\n+acts as a single use bridge to authorization. The second step takes that authorization\n+code and sends it to your token exchange service which combines it with your client\n+secret to obtain an authorization token. That token is effectively your unique password\n+to use the GitHub APIs as long as it is valid.\n+\n+### Installing the addons\n+\n+Install `ember-simple-auth` and `torii`.\n+\n+```\n+ember install ember-simple-auth\n+ember install torii\n+```\n+\n+### Configuration\n+\n+The next step is to set up the configuration. You want your effective configuration in `config/environment.js` to look\n+like this.\n+\n+```js\n+// DON'T TYPE THIS. THIS IS THE EFFECTIVE RESULT.\n+\n+var ENV = {\n+  ...\n+\n+  torii: {\n+    sessionServiceName: 'session',\n+    providers: {\n+      'github-oauth2': {\n+        apiKey: 'YOUR_API_KEY',\n+        redirectUri: 'http://localhost:4200',\n+        scope: 'repo user'\n+      }\n+    }\n+  }\n+};\n+```\n+\n+`YOUR_API_KEY` is the client ID supplied when you registered your GitHub application.\n+\n+However, this API key is probably specific to your development environment, as is the value given for `redirectUri`\n+above. This is fine while your app is in development, but as your application approaches production, you'll need to\n+break some of it out.\n+\n+Additionally, it can be considered bad practice to distribute all of your API keys in your source code. Let's add a\n+little complexity and address this concern by using `ember-cli-dotenv` to put our key in an external file that will be\n+injected at build time. Install the package\n+\n+```js\n+ember install ember-cli-dotenv\n+```\n+\n+and create a `.env` file in the root of your project like\n+\n+```\n+GITHUB_DEV_CLIENT_ID=<YOUR_API_KEY>\n+```\n+\n+replacing `<YOUR_API_KEY>` with the client ID from your application registration.\n+\n+Break the configuration into the stage-specific parts of your `environment.js` like so.\n+\n+```js\n+  var ENV = {\n+    ...\n+\n+    torii: {\n+      sessionServiceName: 'session',\n+      providers: {\n+        'github-oauth2': {\n+          scope: 'repo user'\n+        }\n+      }\n+    }\n+  };\n+\n+  if(environment === 'development') {\n+    ENV.torii.providers['github-oauth2'].apiKey = process.env.GITHUB_DEV_CLIENT_ID;\n+    ENV.torii.providers['github-oauth2'].redirectUri = 'http://localhost:4200';\n+  }\n+```\n+\n+The values in the `development` block are the ones specific to that stage. You may choose to reuse those for the `test`\n+stage, but you will need different ones for `production` as at least the API key will change and you will almost\n+definitely host the application under a domain name. We will add to the `development` block later.\n+\n+### The Basic App\n+\n+Let's give ourselves an app to secure. We'll keep it simple. We'll have a login route for authentication and use the\n+application index route to display the authenticated user's data, an operation that gives a 401 if you aren't\n+authenticated.\n+\n+```\n+ember g route application\n+ember g controller application\n+ember g route index\n+ember g route login\n+```\n+\n+Also, now is a good time to remove `ember-welcome-page` from your `package.json`.\n+\n+Let's put some content in our templates. First, our `application.hbs` will give a friendly greeting and some useful\n+information so we know things are working as we proceed.\n+\n+```handlebars\n+<!-- app/templates/application.hbs -->\n+\n+<h1>Welcome to the Demo App!</h1>\n+\n+API Key: {{config.apiKey}} <br />\n+\n+{{#if session.isAuthenticated}}\n+    Authenticated\n+{{else}}\n+    Unauthenticated\n+{{/if}}\n+\n+<hr />\n+\n+{{outlet}}\n+```\n+\n+The `session` service is automatically injected, so there's no code for that. We'll add the `config` entry for now to\n+verify that our `dotenv` configuration is working.\n+\n+```js\n+// app/controllers/application.js\n+\n+import Ember from 'ember';\n+import config from '../config/environment';\n+\n+export default Ember.Controller.extend({\n+  config: config.torii.providers['github-oauth2']\n+});\n+```\n+\n+For the `index.hbs` let's put a placeholder until we're ready to fill in real data.\n+\n+```handlebars\n+{{!-- app/templates/index.hbs}}\n+\n+<h1>Me</h1>\n+```\n+\n+Finally, we'll put a placeholder in `login.hbs`. We'll give it behavior shortly.\n+\n+```handlebars\n+{{!-- app/templates/login.hbs}}\n+\n+<button>Log in to GitHub</button>\n+```\n+\n+We can ignore the rest of the generated files for this step.\n+ \n+You can test the app so far by running `ember serve` and pointing your browser to `http://localhost:4200/` and\n+`http://localhost:4200/login`.\n+\n+### Adding Authentication\n+\n+We added the configuration for our authentication, but we didn't yet add the pieces that use it. Let's do that first.\n+\n+```\n+ember g authenticator torii\n+```\n+\n+and we'll modify our application and routes with some useful mixins.\n+\n+First, we'll add the [ApplicationRouteMixin](http://ember-simple-auth.com/api/classes/ApplicationRouteMixin.html) to\n+our application route. This is optional, but adds methods supporting the authentication lifecycle that we would\n+otherwise have to implement explicitly.\n+\n+```js\n+import Ember from 'ember';\n+import ApplicationRouteMixin from 'ember-simple-auth/mixins/application-route-mixin';\n+\n+export default Ember.Route.extend(ApplicationRouteMixin, {\n+});\n+```\n+\n+Next, we'll designate the `index` route as an authenticated route using the\n+[AuthenticatedRouteMixin](http://ember-simple-auth.com/api/classes/AuthenticatedRouteMixin.html). This will make the\n+route inaccessible until we finish the authentication. It will automatically redirect you to the specified login route,\n+by default `login`, if you are not authenticated.\n+\n+```js\n+// app/routes/index.js\n+\n+import Ember from 'ember';\n+import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';\n+\n+export default Ember.Route.extend(AuthenticatedRouteMixin, {\n+});\n+```\n+\n+If you're still running the app when you save this, you will see it redirect to the `login` route.\n+\n+We'll also designate the `login` route as available for unauthenticated access by applying the","path":"guides/auth-torii-with-github.md","position":237,"original_position":237,"commit_id":"bffe748f4f5d54746de752faa8205742efceb220","original_commit_id":"bffe748f4f5d54746de752faa8205742efceb220","user":{"login":"srvance","id":1683635,"avatar_url":"https://avatars.githubusercontent.com/u/1683635?v=3","gravatar_id":"","url":"https://api.github.com/users/srvance","html_url":"https://github.com/srvance","followers_url":"https://api.github.com/users/srvance/followers","following_url":"https://api.github.com/users/srvance/following{/other_user}","gists_url":"https://api.github.com/users/srvance/gists{/gist_id}","starred_url":"https://api.github.com/users/srvance/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/srvance/subscriptions","organizations_url":"https://api.github.com/users/srvance/orgs","repos_url":"https://api.github.com/users/srvance/repos","events_url":"https://api.github.com/users/srvance/events{/privacy}","received_events_url":"https://api.github.com/users/srvance/received_events","type":"User","site_admin":false},"body":"Do you want the emphasis on \"only\" in the guide or did you include it to point the difference out to me?","created_at":"2016-12-19T15:53:48Z","updated_at":"2016-12-19T15:53:48Z","html_url":"https://github.com/simplabs/ember-simple-auth/pull/1142#discussion_r93058637","pull_request_url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142","_links":{"self":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/comments/93058637"},"html":{"href":"https://github.com/simplabs/ember-simple-auth/pull/1142#discussion_r93058637"},"pull_request":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142"}}},"pull_request":{"url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142","id":98461332,"html_url":"https://github.com/simplabs/ember-simple-auth/pull/1142","diff_url":"https://github.com/simplabs/ember-simple-auth/pull/1142.diff","patch_url":"https://github.com/simplabs/ember-simple-auth/pull/1142.patch","issue_url":"https://api.github.com/repos/simplabs/ember-simple-auth/issues/1142","number":1142,"state":"open","locked":false,"title":"ESA and torii GitHub guide","user":{"login":"srvance","id":1683635,"avatar_url":"https://avatars.githubusercontent.com/u/1683635?v=3","gravatar_id":"","url":"https://api.github.com/users/srvance","html_url":"https://github.com/srvance","followers_url":"https://api.github.com/users/srvance/followers","following_url":"https://api.github.com/users/srvance/following{/other_user}","gists_url":"https://api.github.com/users/srvance/gists{/gist_id}","starred_url":"https://api.github.com/users/srvance/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/srvance/subscriptions","organizations_url":"https://api.github.com/users/srvance/orgs","repos_url":"https://api.github.com/users/srvance/repos","events_url":"https://api.github.com/users/srvance/events{/privacy}","received_events_url":"https://api.github.com/users/srvance/received_events","type":"User","site_admin":false},"body":"I've written a guide that takes you step by step through the process of authorizing your app to use the GitHub APIs. This is a complete first draft.\r\n\r\nI plan to add a diagram of the OAuth2 explicit grant flow, but the guide is large enough that I wanted to give you reading time.\r\n\r\nNote that the \"Useful Links\" section at the end contains a link to a repo on my account with the source that follows the guide. If you want to move that under the project or into a simplabs repo, I'm open for that.","created_at":"2016-12-18T01:16:11Z","updated_at":"2016-12-19T15:53:48Z","closed_at":null,"merged_at":null,"merge_commit_sha":"3a6e414d39bd2e18a8e76f5cc8d3d22e18e2ae1f","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142/commits","review_comments_url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142/comments","review_comment_url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/comments{/number}","comments_url":"https://api.github.com/repos/simplabs/ember-simple-auth/issues/1142/comments","statuses_url":"https://api.github.com/repos/simplabs/ember-simple-auth/statuses/bffe748f4f5d54746de752faa8205742efceb220","head":{"label":"srvance:auth-torii-github-guide","ref":"auth-torii-github-guide","sha":"bffe748f4f5d54746de752faa8205742efceb220","user":{"login":"srvance","id":1683635,"avatar_url":"https://avatars.githubusercontent.com/u/1683635?v=3","gravatar_id":"","url":"https://api.github.com/users/srvance","html_url":"https://github.com/srvance","followers_url":"https://api.github.com/users/srvance/followers","following_url":"https://api.github.com/users/srvance/following{/other_user}","gists_url":"https://api.github.com/users/srvance/gists{/gist_id}","starred_url":"https://api.github.com/users/srvance/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/srvance/subscriptions","organizations_url":"https://api.github.com/users/srvance/orgs","repos_url":"https://api.github.com/users/srvance/repos","events_url":"https://api.github.com/users/srvance/events{/privacy}","received_events_url":"https://api.github.com/users/srvance/received_events","type":"User","site_admin":false},"repo":{"id":76381500,"name":"ember-simple-auth","full_name":"srvance/ember-simple-auth","owner":{"login":"srvance","id":1683635,"avatar_url":"https://avatars.githubusercontent.com/u/1683635?v=3","gravatar_id":"","url":"https://api.github.com/users/srvance","html_url":"https://github.com/srvance","followers_url":"https://api.github.com/users/srvance/followers","following_url":"https://api.github.com/users/srvance/following{/other_user}","gists_url":"https://api.github.com/users/srvance/gists{/gist_id}","starred_url":"https://api.github.com/users/srvance/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/srvance/subscriptions","organizations_url":"https://api.github.com/users/srvance/orgs","repos_url":"https://api.github.com/users/srvance/repos","events_url":"https://api.github.com/users/srvance/events{/privacy}","received_events_url":"https://api.github.com/users/srvance/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/srvance/ember-simple-auth","description":"A library for implementing authentication/authorization in Ember.js applications.","fork":true,"url":"https://api.github.com/repos/srvance/ember-simple-auth","forks_url":"https://api.github.com/repos/srvance/ember-simple-auth/forks","keys_url":"https://api.github.com/repos/srvance/ember-simple-auth/keys{/key_id}","collaborators_url":"https://api.github.com/repos/srvance/ember-simple-auth/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/srvance/ember-simple-auth/teams","hooks_url":"https://api.github.com/repos/srvance/ember-simple-auth/hooks","issue_events_url":"https://api.github.com/repos/srvance/ember-simple-auth/issues/events{/number}","events_url":"https://api.github.com/repos/srvance/ember-simple-auth/events","assignees_url":"https://api.github.com/repos/srvance/ember-simple-auth/assignees{/user}","branches_url":"https://api.github.com/repos/srvance/ember-simple-auth/branches{/branch}","tags_url":"https://api.github.com/repos/srvance/ember-simple-auth/tags","blobs_url":"https://api.github.com/repos/srvance/ember-simple-auth/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/srvance/ember-simple-auth/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/srvance/ember-simple-auth/git/refs{/sha}","trees_url":"https://api.github.com/repos/srvance/ember-simple-auth/git/trees{/sha}","statuses_url":"https://api.github.com/repos/srvance/ember-simple-auth/statuses/{sha}","languages_url":"https://api.github.com/repos/srvance/ember-simple-auth/languages","stargazers_url":"https://api.github.com/repos/srvance/ember-simple-auth/stargazers","contributors_url":"https://api.github.com/repos/srvance/ember-simple-auth/contributors","subscribers_url":"https://api.github.com/repos/srvance/ember-simple-auth/subscribers","subscription_url":"https://api.github.com/repos/srvance/ember-simple-auth/subscription","commits_url":"https://api.github.com/repos/srvance/ember-simple-auth/commits{/sha}","git_commits_url":"https://api.github.com/repos/srvance/ember-simple-auth/git/commits{/sha}","comments_url":"https://api.github.com/repos/srvance/ember-simple-auth/comments{/number}","issue_comment_url":"https://api.github.com/repos/srvance/ember-simple-auth/issues/comments{/number}","contents_url":"https://api.github.com/repos/srvance/ember-simple-auth/contents/{+path}","compare_url":"https://api.github.com/repos/srvance/ember-simple-auth/compare/{base}...{head}","merges_url":"https://api.github.com/repos/srvance/ember-simple-auth/merges","archive_url":"https://api.github.com/repos/srvance/ember-simple-auth/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/srvance/ember-simple-auth/downloads","issues_url":"https://api.github.com/repos/srvance/ember-simple-auth/issues{/number}","pulls_url":"https://api.github.com/repos/srvance/ember-simple-auth/pulls{/number}","milestones_url":"https://api.github.com/repos/srvance/ember-simple-auth/milestones{/number}","notifications_url":"https://api.github.com/repos/srvance/ember-simple-auth/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/srvance/ember-simple-auth/labels{/name}","releases_url":"https://api.github.com/repos/srvance/ember-simple-auth/releases{/id}","deployments_url":"https://api.github.com/repos/srvance/ember-simple-auth/deployments","created_at":"2016-12-13T17:17:04Z","updated_at":"2016-12-13T17:17:06Z","pushed_at":"2016-12-19T15:35:24Z","git_url":"git://github.com/srvance/ember-simple-auth.git","ssh_url":"git@github.com:srvance/ember-simple-auth.git","clone_url":"https://github.com/srvance/ember-simple-auth.git","svn_url":"https://github.com/srvance/ember-simple-auth","homepage":"http://ember-simple-auth.com","size":7885,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"simplabs:master","ref":"master","sha":"d253c7e00fc6d03af1a519d260d8879728cb895e","user":{"login":"simplabs","id":56627,"avatar_url":"https://avatars.githubusercontent.com/u/56627?v=3","gravatar_id":"","url":"https://api.github.com/users/simplabs","html_url":"https://github.com/simplabs","followers_url":"https://api.github.com/users/simplabs/followers","following_url":"https://api.github.com/users/simplabs/following{/other_user}","gists_url":"https://api.github.com/users/simplabs/gists{/gist_id}","starred_url":"https://api.github.com/users/simplabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simplabs/subscriptions","organizations_url":"https://api.github.com/users/simplabs/orgs","repos_url":"https://api.github.com/users/simplabs/repos","events_url":"https://api.github.com/users/simplabs/events{/privacy}","received_events_url":"https://api.github.com/users/simplabs/received_events","type":"Organization","site_admin":false},"repo":{"id":12570984,"name":"ember-simple-auth","full_name":"simplabs/ember-simple-auth","owner":{"login":"simplabs","id":56627,"avatar_url":"https://avatars.githubusercontent.com/u/56627?v=3","gravatar_id":"","url":"https://api.github.com/users/simplabs","html_url":"https://github.com/simplabs","followers_url":"https://api.github.com/users/simplabs/followers","following_url":"https://api.github.com/users/simplabs/following{/other_user}","gists_url":"https://api.github.com/users/simplabs/gists{/gist_id}","starred_url":"https://api.github.com/users/simplabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simplabs/subscriptions","organizations_url":"https://api.github.com/users/simplabs/orgs","repos_url":"https://api.github.com/users/simplabs/repos","events_url":"https://api.github.com/users/simplabs/events{/privacy}","received_events_url":"https://api.github.com/users/simplabs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/simplabs/ember-simple-auth","description":"A library for implementing authentication/authorization in Ember.js applications.","fork":false,"url":"https://api.github.com/repos/simplabs/ember-simple-auth","forks_url":"https://api.github.com/repos/simplabs/ember-simple-auth/forks","keys_url":"https://api.github.com/repos/simplabs/ember-simple-auth/keys{/key_id}","collaborators_url":"https://api.github.com/repos/simplabs/ember-simple-auth/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/simplabs/ember-simple-auth/teams","hooks_url":"https://api.github.com/repos/simplabs/ember-simple-auth/hooks","issue_events_url":"https://api.github.com/repos/simplabs/ember-simple-auth/issues/events{/number}","events_url":"https://api.github.com/repos/simplabs/ember-simple-auth/events","assignees_url":"https://api.github.com/repos/simplabs/ember-simple-auth/assignees{/user}","branches_url":"https://api.github.com/repos/simplabs/ember-simple-auth/branches{/branch}","tags_url":"https://api.github.com/repos/simplabs/ember-simple-auth/tags","blobs_url":"https://api.github.com/repos/simplabs/ember-simple-auth/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/simplabs/ember-simple-auth/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/simplabs/ember-simple-auth/git/refs{/sha}","trees_url":"https://api.github.com/repos/simplabs/ember-simple-auth/git/trees{/sha}","statuses_url":"https://api.github.com/repos/simplabs/ember-simple-auth/statuses/{sha}","languages_url":"https://api.github.com/repos/simplabs/ember-simple-auth/languages","stargazers_url":"https://api.github.com/repos/simplabs/ember-simple-auth/stargazers","contributors_url":"https://api.github.com/repos/simplabs/ember-simple-auth/contributors","subscribers_url":"https://api.github.com/repos/simplabs/ember-simple-auth/subscribers","subscription_url":"https://api.github.com/repos/simplabs/ember-simple-auth/subscription","commits_url":"https://api.github.com/repos/simplabs/ember-simple-auth/commits{/sha}","git_commits_url":"https://api.github.com/repos/simplabs/ember-simple-auth/git/commits{/sha}","comments_url":"https://api.github.com/repos/simplabs/ember-simple-auth/comments{/number}","issue_comment_url":"https://api.github.com/repos/simplabs/ember-simple-auth/issues/comments{/number}","contents_url":"https://api.github.com/repos/simplabs/ember-simple-auth/contents/{+path}","compare_url":"https://api.github.com/repos/simplabs/ember-simple-auth/compare/{base}...{head}","merges_url":"https://api.github.com/repos/simplabs/ember-simple-auth/merges","archive_url":"https://api.github.com/repos/simplabs/ember-simple-auth/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/simplabs/ember-simple-auth/downloads","issues_url":"https://api.github.com/repos/simplabs/ember-simple-auth/issues{/number}","pulls_url":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls{/number}","milestones_url":"https://api.github.com/repos/simplabs/ember-simple-auth/milestones{/number}","notifications_url":"https://api.github.com/repos/simplabs/ember-simple-auth/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/simplabs/ember-simple-auth/labels{/name}","releases_url":"https://api.github.com/repos/simplabs/ember-simple-auth/releases{/id}","deployments_url":"https://api.github.com/repos/simplabs/ember-simple-auth/deployments","created_at":"2013-09-03T18:03:26Z","updated_at":"2016-12-19T02:40:07Z","pushed_at":"2016-12-19T15:35:26Z","git_url":"git://github.com/simplabs/ember-simple-auth.git","ssh_url":"git@github.com:simplabs/ember-simple-auth.git","clone_url":"https://github.com/simplabs/ember-simple-auth.git","svn_url":"https://github.com/simplabs/ember-simple-auth","homepage":"http://ember-simple-auth.com","size":7456,"stargazers_count":1614,"watchers_count":1614,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":461,"mirror_url":null,"open_issues_count":66,"forks":461,"open_issues":66,"watchers":1614,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142"},"html":{"href":"https://github.com/simplabs/ember-simple-auth/pull/1142"},"issue":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/issues/1142"},"comments":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/issues/1142/comments"},"review_comments":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142/comments"},"review_comment":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/pulls/1142/commits"},"statuses":{"href":"https://api.github.com/repos/simplabs/ember-simple-auth/statuses/bffe748f4f5d54746de752faa8205742efceb220"}}}}
{"actor":{"display_login":"srvance"}}