# @inrupt/solid-client-authn-core

Latest version **5.0.3** (published 2026-10-29) · MIT license · 0 weekly downloads

## Install

```sh
npm install @inrupt/solid-client-authn-core
pnpm add @inrupt/solid-client-authn-core
yarn add @inrupt/solid-client-authn-core
bun add @inrupt/solid-client-authn-core
```

## Health

**Score 70/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; has provenance; recently updated; high maintenance score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 5.0.3 |
| Published | 2026-10-29 |
| First published | 2020-09-08 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | ^22.0.0 \|\| ^24.0.0 |
| Dependencies | 3 |
| Unpacked size | 545.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 77 |
| Maintainers | timbl, nseydoux, inrupt_ci, astrid.vazquez |

## Links

- npm: https://www.npmjs.com/package/@inrupt/solid-client-authn-core
- Repository: https://github.com/inrupt/solid-client-authn-js
- Homepage: https://github.com/inrupt/solid-client-authn-js#readme
- Issues: https://github.com/inrupt/solid-client-authn-js/issues
- npm.io page: https://npm.io/package/@inrupt/solid-client-authn-core

## Dependencies (3)

- [jose](https://npm.io/package/jose.md) ^6.2.13
- [uuid](https://npm.io/package/uuid.md) ^14.0.3
- [events](https://npm.io/package/events.md) ^3.3.0

## Recent versions

- 5.0.3 (latest) — 2026-10-29
- 4.0.1 (release-4.0.1) — 2026-10-29
- 1.12.3-main-2788322036-11398-1659518697.0 (main) — 2022-08-03
- 1.12.3-ciremove-publish-website-workflow-2784521849-11397-1659466750.0 (ciremove-publish-website-workflow) — 2022-08-02
- 1.12.3-release-2773905896-11374-1659347618.0 (release) — 2022-08-01
- 1.12.2-choreimprove-engine-strictness-2773003795-11370-1659338596.0 (choreimprove-engine-strictness) — 2022-08-01
- 1.12.2-chorefix-vuln-2712032375-11248-1658409459.0 (chorefix-vuln) — 2022-07-21
- 1.12.2-chorefix-readme-example-link-2701228049-11236-1658273538.0 (chorefix-readme-example-link) — 2022-07-19
- 1.12.2-choredisable-production-e2e-2694400051-11224-1658191245.0 (choredisable-production-e2e) — 2022-07-19
- 1.12.2-dependabotnpmandyarnwebpack-5721-2648535353-11135-1657531182.0 (dependabotnpmandyarnwebpack-5721) — 2022-07-11
- 1.12.2-featwebworker-support-2639169291-11127-1657324386.0 (featwebworker-support) — 2022-07-08
- 1.12.2-fixGHSA-3j8f-xvm3-ffx4-2630547937-11123-1657207032.0 (fixGHSA-3j8f-xvm3-ffx4) — 2022-07-07
- 1.12.2-fixload-from-storage-client-identifier-2628440261-11120-1657185084.0 (fixload-from-storage-client-identifier) — 2022-07-07
- 1.12.2-fixsonar-dependabot-2574815324-11009-1656404726.0 (fixsonar-dependabot) — 2022-06-28
- 1.12.2-releasev1121-2570626881-10997-1656347733.0 (releasev1121) — 2022-06-27
- … 4584 more at https://npm.io/package/@inrupt/solid-client-authn-core/versions

## README

# Solid JavaScript Authentication - solid-client-authn

[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](CODE-OF-CONDUCT.md)

This project adheres to the Contributor Covenant [code of conduct](CODE-OF-CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to [engineering@inrupt.com](mailto:engineering@inrupt.com).

`solid-client-authn` is a suite of libraries to manage the authentication required to access protected resources on Solid servers.
The libraries share a common API and include different modules for different deployment environments:

- `solid-client-authn-browser` can be used to build web apps in the browser.
- `solid-client-authn-node` can be used to build server-side and console-based apps.

@inrupt/solid-client-authn libraries are part of a suite open source JavaScript libraries designed to support developers building Solid applications.

## Inrupt Solid JavaScript Client Libraries

### Data access and permissions management - solid-client

[@inrupt/solid-client](https://github.com/inrupt/solid-client-js/) allows developers to access data and manage permissions on data stored in Solid Pods.

### Authentication - solid-client-authn

[@inrupt/solid-client-authn](https://github.com/inrupt/solid-client-authn) allows developers to authenticate against a Solid server. This is necessary when the resources on your Pod are not public.

### Vocabularies and interoperability - solid-common-vocab-rdf

[@inrupt/solid-common-vocab-rdf](https://github.com/inrupt/solid-common-vocab-rdf) allows developers to build interoperable apps by reusing well-known vocabularies. These libraries provide vocabulary terms as constants that you just have to import.

## Supported environments

Our JavaScript Client Libraries use relatively modern JavaScript, aligned with
the [ES2022](https://262.ecma-international.org/13.0/) Specification features, we
ship both [ESM](https://nodejs.org/docs/latest-v16.x/api/esm.html) and
[CommonJS](https://nodejs.org/docs/latest-v16.x/api/modules.html), with type
definitions for TypeScript alongside.

This means that out of the box, we only support environments (browsers or
runtimes) that were released after mid-2022, if you wish to target other (older)
environments, then you will need to cross-compile our SDKs via the use of
[Babel](https://babeljs.io), [webpack](https://webpack.js.org/),
[SWC](https://swc.rs/), or similar.

If you need support for Internet Explorer, it is recommended to pass them
through a tool like [Babel](https://babeljs.io), and to add polyfills for e.g.
`Map`, `Set`, `Promise`, `Headers`, `Array.prototype.includes`, `Object.entries`
and `String.prototype.endsWith`.

### Node.js Support

See [Inrupt Solid Javascript Client
Libraries](https://docs.inrupt.com/sdk/javascript-sdk#node-js-support).

## Installation

For the latest stable version of solid-client-authn-browser:

```bash
npm install @inrupt/solid-client-authn-browser
```

For the latest stable version of solid-client-authn-node:

```bash
npm install @inrupt/solid-client-authn-node
```

For the latest stable version of all Inrupt Solid JavaScript libraries:

```bash
# For browser-based projects
npm install @inrupt/solid-client @inrupt/solid-client-authn-browser @inrupt/vocab-common-rdf

# For Node.js-based projects
npm install @inrupt/solid-client @inrupt/solid-client-authn-node @inrupt/vocab-common-rdf
```

## Issues & Help

### Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the [Solid forum](https://forum.solidproject.org/). The Solid forum is a good place to meet the rest of the community.

### Bugs and Feature Requests

- For public feedback, bug reports, and feature requests please file an issue via [GitHub](https://github.com/inrupt/solid-client-authn/issues/).
- For non-public feedback or support inquiries please use the [Inrupt Service Desk](https://inrupt.atlassian.net/servicedesk).

### Documentation

- [Using Inrupt Solid JavaScript Client Libraries to authenticate](https://docs.inrupt.com/sdk/javascript-sdktutorial/authenticate/)
- [Inrupt documentation Homepage](https://docs.inrupt.com/)
- [Architecture and design documentation](./ARCHITECTURE.md)
- [Security policy and vulnerability reporting](./SECURITY.md)

## How to run test apps?

### Browser

```shell
git clone https://github.com/inrupt/solid-client-authn-js
cd solid-client-authn-js
npm ci
cd packages/browser/examples/single/bundle/
npm ci
npm run start
```

Go to http://localhost:3001/.

### NodeJS

#### Running a server-side app

See [the dedicated example](/packages/node/examples/server/README.md).

#### Running an authenticated script

See [the dedicated example](/packages/node/examples/script/README.md).

## Using with jest

Due to [a behavior from jsdom](https://github.com/jsdom/jsdom/issues/2524), `@inrupt/solid-client-authn-browser` needs some adjustments if you want to run it with `jest`. There are multiple options, listed in [a dedicated issue](https://github.com/inrupt/solid-client-authn-js/issues/1676). Thanks to [Angelo V.](https://github.com/angelo-v) for proposing a mitigation.

---
_Source: https://npm.io/package/@inrupt/solid-client-authn-core · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
