PHPackages                             mwstake/mediawiki-component-oauth-client - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. mwstake/mediawiki-component-oauth-client

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

mwstake/mediawiki-component-oauth-client
========================================

Library for user authentication over OAuth2 protocol

2.0.1(1y ago)0374GPL-3.0-onlyPHPCI passing

Since Oct 28Pushed 5mo ago3 watchersCompare

[ Source](https://github.com/hallowelt/mwstake-mediawiki-component-oauth-client)[ Packagist](https://packagist.org/packages/mwstake/mediawiki-component-oauth-client)[ RSS](/packages/mwstake-mediawiki-component-oauth-client/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (10)Versions (8)Used By (0)

mwstake/mediawiki-component-oauth-client
========================================

[](#mwstakemediawiki-component-oauth-client)

Library for user authentication over OAuth2 protocol.

Installation
------------

[](#installation)

```
composer require mwstake/mediawiki-component-oauth-client
```

Usage
-----

[](#usage)

### Connection params

[](#connection-params)

```
$GLOBALS['wgOAuthClientConfig'] = [
	'base_uri' => '',
			'client_id' => '##CLIENT_ID##',
			'client_secret' => '##CLIENT_SECRET##',
			// if needed adapt endpoints, if not, omit to use the defaults
			'endpoints' => [
				'authorize' => '/oauth2/authorize',
				'token' => '/oauth2/token',
				'user' => '/oauth2/user',
			],
			// if needed adapt scopes, if not, omit to use the defaults
			'default_scopes' => [],
			'redirect_uri' => ##REDIRECT_URI##,
];
```

### Login page

[](#login-page)

Your implementation needs to provide a login page that will be used as the redirect target for the OAuth2 authorization code flow.

Specify the name of the SpecialPage in `$GLOBALS['wgOAuthLoginPage'] = 'MyPage`;`

### Resource owner

[](#resource-owner)

If you want to have a custom resource owner, implement a class that implements `League\OAuth2\Client\Provider\ResourceOwnerInterface`and set it in `$GLOBALS['wgOAuthClientResourceOwner'] = MyResourceOwner::class;`.

Otherwise, the default `League\OAuth2\Client\Provider\GenericResourceOwner` will be used.

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance59

Moderate activity, may be stable

Popularity13

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 53.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~140 days

Recently: every ~158 days

Total

7

Last Release

453d ago

Major Versions

1.0.x-dev → 2.0.02024-07-17

### Community

Maintainers

![](https://www.gravatar.com/avatar/e39dfe9d3120de240053c4283e905254e8774d3278da25ad79974a8742c55192?d=identicon)[osnard](/maintainers/osnard)

![](https://www.gravatar.com/avatar/161c38b5448b71865cf0652b6974ed489dd3683b5d6e1814973cea6cb66c8f1d?d=identicon)[dsavuljesku](/maintainers/dsavuljesku)

---

Top Contributors

[![HamishSlater](https://avatars.githubusercontent.com/u/26261210?v=4)](https://github.com/HamishSlater "HamishSlater (7 commits)")[![it-spiderman](https://avatars.githubusercontent.com/u/13665198?v=4)](https://github.com/it-spiderman "it-spiderman (4 commits)")[![osnard](https://avatars.githubusercontent.com/u/1201528?v=4)](https://github.com/osnard "osnard (2 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mwstake-mediawiki-component-oauth-client/health.svg)

```
[![Health](https://phpackages.com/badges/mwstake-mediawiki-component-oauth-client/health.svg)](https://phpackages.com/packages/mwstake-mediawiki-component-oauth-client)
```

###  Alternatives

[thenetworg/oauth2-azure

Azure Active Directory OAuth 2.0 Client Provider for The PHP League OAuth2-Client

2509.6M48](/packages/thenetworg-oauth2-azure)[stevenmaguire/oauth2-keycloak

Keycloak OAuth 2.0 Client Provider for The PHP League OAuth2-Client

2275.9M27](/packages/stevenmaguire-oauth2-keycloak)[patrickbussmann/oauth2-apple

Sign in with Apple OAuth 2.0 Client Provider for The PHP League OAuth2-Client

1132.5M6](/packages/patrickbussmann-oauth2-apple)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

728272.9k20](/packages/civicrm-civicrm-core)[microsoft/kiota-authentication-phpleague

Authentication provider for Kiota using the PHP League OAuth 2.0 client to authenticate against the Microsoft Identity platform

153.2M7](/packages/microsoft-kiota-authentication-phpleague)[rainlab/user-plugin

User plugin for October CMS

11954.3k13](/packages/rainlab-user-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
