# panva/openid-client

OAuth 2 / OpenID Connect Client API for JavaScript Runtimes

Repository: https://github.com/panva/openid-client
Canonical: https://ross.abutalabs.com/products/openid-client
Language: TypeScript
License: MIT
License Family: permissive
Topics: oidc, openid, openid-client, openid-connect, passport, connect, client
Last push: 2026-08-24T20:22:07+00:00

## Health v2 (maintenance only)
Score: 99/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 98, longevity 100
- inputs: {"age_days": 3719, "days_push": 9, "days_rel": 13, "gap_med": 6, "n_releases_24m": 38}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2398, forks 410 (observed 2026-08-28T04:06:43.651398+00:00)

## What it is
openid-client is a TypeScript library providing OAuth 2.0 and OpenID Connect client APIs for JavaScript runtimes including Node.js, Deno, browsers, and Cloudflare Workers. It implements certified authorization and authentication flows such as Authorization Code, CIBA, Device Authorization, and FAPI profiles.

## Use cases
- add OpenID Connect login to a Node.js app
- implement OAuth 2.0 authorization code flow
- integrate with an identity provider like Auth0 or Keycloak
- perform token introspection and revocation
- use client credentials grant for machine-to-machine auth
- build a FAPI-compliant relying party
- add a Passport strategy for OIDC authentication
- handle DPoP proof-of-possession tokens

## When to choose
- you need a certified, standards-compliant OIDC/OAuth client in JavaScript
- you support multiple JS runtimes (Node, Deno, Workers, browsers)
- you need advanced flows like CIBA, PAR, JAR, JARM, or DPoP
- you want an actively maintained library with OpenID certification

## When to avoid
- you need an OAuth/OIDC server or provider, not a client
- you are outside the JavaScript ecosystem
- you only need simple social login with a hosted SDK like Auth0's
- you need a full framework with built-in session management

## Facets
- artifact type: library
- maturity: stable
- function: auth, authorization, http-client, sdk
- domain: security, web-development, apis
- platform: browser, cross-platform
- tags: oauth2, openid-connect, oidc, authentication-flows, fapi, dpop, passport-strategy, typescript, authentication, nodejs, deno, web-server

## Member repositories
- panva/openid-client (main) score 99

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:43.651398+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:34:19.039268+00:00, confidence not recorded.
  - readme: https://github.com/panva/openid-client (fetched 2026-08-28T04:06:43.651398+00:00, sha b2a7f10a9f18)
- Data as of 2026-08-30T08:39:29.467469+00:00.
