Skip to main content

Client Setup With an Adapter

Using a Client With an Adapter

Once you have downloaded your Installation JSON, you can configure your application quickly using a Keycloak adapter or a standards‑based OpenID Connect (OIDC) client library. Keycloak provides adapters for several languages, including Java, JavaScript, and .NET (C#).

In most cases, no additional configuration is required beyond the Installation JSON generated during the request process. Keycloak and the community also provide example applications that demonstrate common integration patterns, including authentication, token handling, and logout flows. For more details on what the Installation JSON contains and how it is used, see installation-json.

Our Guidance on Libraries and Adapters

We regularly evaluate existing OIDC client libraries to decide which technologies to reference and which example applications to maintain for our client teams.

Libraries are evaluated using the following criteria::

  • Actively maintained? - Evidence of recent commits, releases, or issue resolution.
  • Meets required feature set - Supports standard OIDC authorization flows and Keycloak‑specific parameters (for example, kc_idp_hint).
  • Popularity - Relative adoption based on community usage (for example, approximate weekly downloads).
  • Open source - Source code is publicly available and community‑reviewable.
  • PCKE Support - Required for modern, secure public‑client implementations.
  • SPA compatibility - Suitable for single‑page application (SPA) architectures where applicable.
  • Comments - Notable limitations, use cases, or ecosystem considerations.

Note Popularity values are approximate and change over time. They are provided for comparison only and should not be the sole factor in library selection. Data collected as of May 2026

JavaScript

LibraryBeing Maintained?Meets Feature SetPopularity (~ weekly)Open SourcePKCE SupportSPA SupportComments
passport-keycloak-bearer~500
oidc-client-ts~35k-40k
sso-express~100-150Being used by some community teams.
openid-client~300k-900kFor Node.js only.
keycloak-js~90k-120kKeycloak supported in their documentation.

TypeScript

LibraryBeing Maintained?Meets Feature SetPopularity (~ weekly)Open SourcePKCE SupportSPA SupportComments
oidc-client-ts~35k-40k
sso-express~100-150Being used by some community teams. Works for TypeScript.
keycloak-js~90k-120kKeycloak supported in their documentation. Works for TypeScript.

C#/.Net

LibraryBeing Maintained?Meets Feature SetPopularity (~ weekly)Open SourcePKCE SupportSPA SupportComments
IdentityModel.OidcClientN/A

Python

LibraryBeing Maintained?Meets Feature SetPopularity (~ weekly)Open SourcePKCE SupportSPA SupportComments
JWTConnect-Python-OidcRP~400
pyoidcN/A

Java

LibraryBeing Maintained?Meets Feature SetPopularityOpen SourcePKCE SupportSPA SupportComments
Spring SecurityVery highN/A
SpringBoot Very highN/A

AngularJS

LibraryBeing Maintained?Meets Feature SetPopularity (~ weekly)Open SourcePKCE SupportSPA SupportComments
angular-auth-oidc-client~25k-30k

Additional Notes

  • Libraries being considered which were not maintained are not included in this list.