{"id":13544810,"url":"https://github.com/FriendsOfFlarum/oauth","last_synced_at":"2025-04-02T14:31:54.802Z","repository":{"id":40469748,"uuid":"270711664","full_name":"FriendsOfFlarum/oauth","owner":"FriendsOfFlarum","description":"Allow users to log in with GitHub, Twitter, Facebook, and more!","archived":false,"fork":false,"pushed_at":"2024-10-29T08:16:54.000Z","size":832,"stargazers_count":44,"open_issues_count":5,"forks_count":16,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-10-29T09:24:53.869Z","etag":null,"topics":["facebook","flarum","friendsofflarum","github","linkedin","oauth","twitter"],"latest_commit_sha":null,"homepage":"https://discuss.flarum.org/d/25182","language":"PHP","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/FriendsOfFlarum.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"open_collective":"fof"}},"created_at":"2020-06-08T15:03:01.000Z","updated_at":"2024-10-29T08:16:24.000Z","dependencies_parsed_at":"2024-04-17T06:38:39.253Z","dependency_job_id":"a15676ce-571b-473c-874c-4138253e0217","html_url":"https://github.com/FriendsOfFlarum/oauth","commit_stats":{"total_commits":136,"total_committers":15,"mean_commits":9.066666666666666,"dds":0.6617647058823529,"last_synced_commit":"79330c306b465662a43defa6b92d2fcd99a44440"},"previous_names":[],"tags_count":42,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FriendsOfFlarum%2Foauth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FriendsOfFlarum%2Foauth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FriendsOfFlarum%2Foauth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FriendsOfFlarum%2Foauth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FriendsOfFlarum","download_url":"https://codeload.github.com/FriendsOfFlarum/oauth/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246754520,"owners_count":20828365,"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":["facebook","flarum","friendsofflarum","github","linkedin","oauth","twitter"],"created_at":"2024-08-01T11:00:53.618Z","updated_at":"2025-04-02T14:31:54.726Z","avatar_url":"https://github.com/FriendsOfFlarum.png","language":"PHP","funding_links":["https://opencollective.com/fof","https://opencollective.com/fof/donate"],"categories":["Extensions"],"sub_categories":["Authentication \u0026 Authorization ([:top:](#table-of-contents))"],"readme":"# OAuth by FriendsOfFlarum\n\n![License](https://img.shields.io/badge/license-MIT-blue.svg) [![Latest Stable Version](https://img.shields.io/packagist/v/fof/oauth.svg)](https://packagist.org/packages/fof/oauth) [![Total Downloads](https://img.shields.io/packagist/dt/fof/oauth.svg)](https://packagist.org/packages/fof/oauthh)  [![OpenCollective](https://img.shields.io/badge/opencollective-fof-blue.svg)](https://opencollective.com/fof/donate)\n\n\nA [Flarum](http://flarum.org) extension. Allow users to log in with various OAuth providers\n\n### Bundled providers\n\nBy default these providers are included:\n\n- Discord\n- Facebook\n- Github\n- Gitlab\n- Google\n- LinkedIn\n- Twitter\n\n### Permissions\n\nThis extension provides the ability to view the status of linked OAuth providers (intended for admin and/or moderator use). In order for this to function correctly, you must also set the permission `Moderate Access Tokens` to at least the same group as you require for `Moderate user's linked accounts`.\n\n### Additional providers\n\nAdditional OAuth providers are available for this extension. Here's a handy list of known extensions, let us know if you know of any more and we'll get them added!\n\n- [Amazon](https://extiverse.com/extension/ianm/oauth-amazon)\n- [Apple](https://extiverse.com/extension/blomstra/oauth-apple)\n- [Slack](https://extiverse.com/extension/blomstra/oauth-slack)\n- [Line](https://extiverse.com/extension/ianm/oauth-line)\n- [Microsoft](https://github.com/imorland/flarum-ext-oauth-microsoft) *experimental\n- [Twitch](https://github.com/imorland/flarum-ext-oauth-twitch)\n- [Auth0](https://extiverse.com/extension/lodge104/flarum-ext-oauth-auth0)\n\n### Screenshots\n\nDefault provider settings example\n![provider setup example](https://user-images.githubusercontent.com/16573496/201470744-ca8be058-f79c-4fc4-8c19-3ac5af2bd44b.png)\n\nLogin/signup example with `Github`, `Twitter`, `Twitch` and `Google` enabled.\n![example login](https://user-images.githubusercontent.com/16573496/201470704-91874f67-284a-4fb2-967c-fd9d0eff2d9f.png)\n\n### Installation\n\n```sh\ncomposer require fof/oauth\n```\n\n### Updating\n\n```sh\ncomposer update fof/oauth\nphp flarum cache:clear\n```\n\n\n### Configuration\n\n#### Translation\n\nYou can replace the text for the forum sign in buttons in two ways.\n- Use `fof-oauth.forum.providers.\u003cname\u003e` to replace the name of the provider on the forum side\n- Use `fof-oauth.forum.log_in.with_\u003cname\u003e_button` to replace the entire button \"Log In with \u003cname\u003e\" text\n\n### Extending\n\nIt is possible to add additional `Providers` using an extender. See [OAuth-Amazon](https://github.com/imorland/flarum-ext-oauth-amazon) for an example of how to accomplish this but basically:\n\n- In your new extension, require `fof/oauth` as a dependency\n- Define a new `Provider` which extends `FoF\\OAuth\\Provider`\n- From your new extensions `extend.php`, register the provider `(new FoF\\OAuth\\Extend\\RegisterProvider(MyNewProvider::class))`\n- Provide the required translations under the `fof-oauth` namespace. See the linked example extension for details on which keys are required.\n- (optionally) Provide an admin panel link to `fof/oauth` for easy configuration. Again, see the linked example.\n- (optionally) Provide any CSS required to style your new login button. See the linked example.\n\n### Links\n\n[![OpenCollective](https://img.shields.io/badge/donate-friendsofflarum-44AEE5?style=for-the-badge\u0026logo=open-collective)](https://opencollective.com/fof/donate)\n\n- [Discuss](https://discuss.flarum.org/d/25182)\n- [Packagist](https://packagist.org/packages/fof/oauth)\n- [GitHub](https://github.com/FriendsOfFlarum/oauth)\n\nAn extension by [FriendsOfFlarum](https://github.com/FriendsOfFlarum).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFriendsOfFlarum%2Foauth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFriendsOfFlarum%2Foauth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFriendsOfFlarum%2Foauth/lists"}