{"id":21892734,"url":"https://github.com/cgorshing/ueberauth_khanacademy","last_synced_at":"2025-03-22T03:25:28.756Z","repository":{"id":57556466,"uuid":"107903980","full_name":"cgorshing/ueberauth_khanacademy","owner":"cgorshing","description":"Khan Academy removed their API's on January 6, 2020, as such this library has stopped working from that time.","archived":false,"fork":false,"pushed_at":"2020-06-17T01:38:45.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-28T08:26:06.089Z","etag":null,"topics":["elixir","khan-academy","oauth","plug","strategy","ueberauth"],"latest_commit_sha":null,"homepage":"","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cgorshing.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-10-22T21:24:24.000Z","updated_at":"2020-03-14T16:59:43.000Z","dependencies_parsed_at":"2022-09-14T12:21:38.749Z","dependency_job_id":null,"html_url":"https://github.com/cgorshing/ueberauth_khanacademy","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgorshing%2Fueberauth_khanacademy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgorshing%2Fueberauth_khanacademy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgorshing%2Fueberauth_khanacademy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgorshing%2Fueberauth_khanacademy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cgorshing","download_url":"https://codeload.github.com/cgorshing/ueberauth_khanacademy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244901454,"owners_count":20528940,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["elixir","khan-academy","oauth","plug","strategy","ueberauth"],"created_at":"2024-11-28T12:59:24.758Z","updated_at":"2025-03-22T03:25:28.737Z","avatar_url":"https://github.com/cgorshing.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"*Khan Academy removed their API's on January 6, 2020, as such this library has\nstopped working from that time.*\n\n# Überauth Khan Academy\n\n\u003e Khan Academy strategy for Überauth.\n\n_Note_: Sessions are required for this strategy.\n\n[Source code is available on Github](https://github.com/cgorshing/ueberauth_khanacademy).\u003cbr/\u003e\n[Package is available on hex](https://hex.pm/packages/ueberauth_khanacademy).\n\n## Installation\n\n1. Register your app at [Khan Academy](https://www.khanacademy.org/api-apps/register).\n\n1. Add `:ueberauth_khanacademy` to your list of dependencies in `mix.exs`:\n\n    ```elixir\n    def deps do\n      [{:ueberauth_khanacademy, \"~\u003e 0.0.4\"}]\n    end\n    ```\n\n1. Add the strategy to your applications:\n\n    ```elixir\n    def application do\n      [applications: [:ueberauth_khanacademy]]\n    end\n    ```\n\n1. Add Khan Academy to your Überauth configuration:\n\n    ```elixir\n    config :ueberauth, Ueberauth,\n      providers: [\n        khanacademy: {Ueberauth.Strategy.KhanAcademy, []}\n      ]\n    ```\n\n1.  Update your provider configuration:\n\n    ```elixir\n    config :ueberauth, Ueberauth.Strategy.KhanAcademy.OAuth,\n      consumer_key: System.get_env(\"KHANACADEMY_CONSUMER_KEY\"),\n      consumer_secret: System.get_env(\"KHANACADEMY_CONSUMER_SECRET\")\n    ```\n\n1.  Include the Überauth plug in your controller:\n\n    ```elixir\n    defmodule MyApp.AuthController do\n      use MyApp.Web, :controller\n\n      pipeline :browser do\n        plug Ueberauth\n        ...\n       end\n    end\n    ```\n\n1.  Create the request and callback routes if you haven't already:\n\n    ```elixir\n    scope \"/auth\", MyApp do\n      pipe_through :browser\n\n      get \"/:provider\", AuthController, :request\n      get \"/:provider/callback\", AuthController, :callback\n    end\n    ```\n\n1. Your controller needs to implement callbacks to deal with `Ueberauth.Auth` and `Ueberauth.Failure` responses.\n\nFor an example implementation see the [Überauth Example](https://github.com/ueberauth/ueberauth_example) application.\n\n## Calling\n\nDepending on the configured url you can initial the request through:\n\n    /auth/khanacademy\n\nCurrently no permissions or scope is available.\n\n## License\n\nPlease see [LICENSE](https://github.com/cgorshing/ueberauth_khanacademy/blob/master/LICENSE) for licensing details.\n\n## Acknowledgment\n\nMy best to [Christopher Adams](https://github.com/christopheradams) as his [Flickr strategy](https://github.com/christopheradams/ueberauth_flickr) was the starting point for this application. Appreciate your work sir!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcgorshing%2Fueberauth_khanacademy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcgorshing%2Fueberauth_khanacademy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcgorshing%2Fueberauth_khanacademy/lists"}