MCPcopy
hub / github.com/authts/oidc-client-ts

github.com/authts/oidc-client-ts @v3.5.0 sqlite

repository ↗ · DeepWiki ↗ · release v3.5.0 ↗
422 symbols 1,251 edges 108 files 64 documented · 15%
README

oidc-client-ts

Stable Release CI Codecov

Library to provide OpenID Connect (OIDC) and OAuth2 protocol support for client-side, browser-based JavaScript client applications. Also included is support for user session and access token management.

This project is a fork of IdentityModel/oidc-client-js which halted its development in June 2021. It has since been ported to TypeScript here with a similar API for the initial 2.0 release. Going forward, this library will focus only on protocols that continue to have support in OAuth 2.1. As such, the implicit grant is not supported by this client. Additional migration notes from oidc-client are available here.

Contributions and help are greatly appreciated!

Implements the following OAuth 2.0 protocols and supports OpenID Connect Core 1.0:

Table of Contents

Installation

Using npm

$ npm install oidc-client-ts --save

Building the Source

$ git clone https://github.com/authts/oidc-client-ts.git
$ cd oidc-client-ts
$ npm install
$ npm run build

Running the Sample

Parcel project

$ cd samples/Parcel
$ npm install
$ npm run start

and then browse to http://localhost:1234.

Angular app

can be found here.

Running the Tests

$ npm test

Contributing

We appreciate feedback and contribution to this repo!

License

This project is licensed under the Apache-2.0 license. See the LICENSE file for more info.

Extension points exported contracts — how you extend this code

INavigator (Interface)
(no doc) [6 implementers]
src/navigators/INavigator.ts
StateStore (Interface)
(no doc) [3 implementers]
src/StateStore.ts
DPoPStore (Interface)
(no doc) [3 implementers]
src/DPoPStore.ts
AsyncStorage (Interface)
(no doc) [1 implementers]
src/AsyncStorage.ts
ILogger (Interface)
(no doc) [1 implementers]
src/utils/Logger.ts
OidcAddressClaim (Interface)
(no doc)
src/Claims.ts
DPoPSettings (Interface)
(no doc)
src/OidcClientSettings.ts
SigninRequestCreateArgs (Interface)
(no doc)
src/SigninRequest.ts

Core symbols most depended-on inside this repo

create
called by 123
src/utils/Logger.ts
debug
called by 111
src/utils/Logger.ts
error
called by 67
src/utils/Logger.ts
get
called by 44
src/DPoPStore.ts
log
called by 39
samples/Parcel/src/code-flow-duendesoftware/sample.js
throw
called by 39
src/utils/Logger.ts
info
called by 32
src/utils/Logger.ts
addHandler
called by 31
src/utils/Event.ts

Shape

Method 247
Class 89
Function 51
Interface 34
Enum 1

Languages

TypeScript100%

Modules by API surface

src/UserManager.ts41 symbols
src/UserManagerEvents.ts21 symbols
src/utils/Logger.ts20 symbols
src/OidcClient.ts16 symbols
src/utils/CryptoUtils.ts15 symbols
src/MetadataService.ts15 symbols
samples/Parcel/src/code-flow-duendesoftware/sample.js13 symbols
src/TokenClient.ts11 symbols
src/ResponseValidator.ts11 symbols
samples/Parcel/src/user-manager/sample.js11 symbols
src/JsonService.ts9 symbols
src/AccessTokenEvents.ts9 symbols

Dependencies from manifests, versioned

@eslint/eslintrc3.2.0 · 1×
@eslint/js9.18.0 · 1×
@microsoft/api-extractor7.49.1 · 1×
@stylistic/eslint-plugin2.13.0 · 1×
@testing-library/jest-dom6.6.3 · 1×
@types/node24.10.1 · 1×
@typescript-eslint/eslint-plugin8.20.0 · 1×
@typescript-eslint/parser8.20.0 · 1×
@vitest/coverage-v84.0.16 · 1×
concurrently9.2.1 · 1×
esbuild0.27.0 · 1×
eslint9.18.0 · 1×

For agents

$ claude mcp add oidc-client-ts \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact