1 | # Solid JavaScript authentication for the browser - solid-client-authn-browser
|
2 |
|
3 | `solid-client-authn-browser` is a library designed to authenticate web apps (in the browser) with Solid identity servers.
|
4 | The main documentation is at the [root of the repository](../../README.md).
|
5 |
|
6 | ## Underlying libraries
|
7 |
|
8 | `solid-client-authn-browser` is based on [`oidc-client-js`](https://github.com/IdentityModel/oidc-client-js).
|
9 | However, the latter lacks some features that are necessary to provide the developer experience we specifically want for the Solid ecosystem, so we developed [`oidc-client-ext`](https://www.npmjs.com/package/@inrupt/oidc-client-ext) to add these features.
|
10 |
|
11 | # Other Inrupt Solid JavaScript Libraries
|
12 | [`@inrupt/solid-client-authn-browser`](https://www.npmjs.com/package/@inrupt/solid-client-authn-browser )is part of a family open source JavaScript libraries designed to support developers building Solid applications.
|
13 |
|
14 | ## Solid JavaScript Authentication - solid-client-authn
|
15 |
|
16 | `solid-client-authn` is a set of libraries designed to authenticate with Solid identity servers.
|
17 | The libraries share a common API and include different modules for different deployment environments:
|
18 |
|
19 | - `solid-client-authn-browser` can be used to help build web apps in the browser.
|
20 | - `solid-client-authn-node` is **planned** to help build server-side and console-based apps.
|
21 |
|
22 | @inrupt/solid-client-authn libraries are part of a family open source JavaScript libraries designed to support developers building Solid applications.
|
23 |
|
24 | ## Inrupt Solid JavaScript Client Libraries
|
25 |
|
26 | ### Data access and permissions management - solid-client
|
27 |
|
28 | [@inrupt/solid-client](https://docs.inrupt.com/client-libraries/solid-client-js/) allows developers to access data and manage permissions on data stored in Solid Pods.
|
29 |
|
30 | ### Authentication - solid-client-authn
|
31 |
|
32 | [@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.
|
33 |
|
34 | ### Vocabularies and interoperability - solid-common-vocab-rdf
|
35 |
|
36 | [@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 vocabularies available as constants that you just have to import.
|
37 |
|
38 | # Issues & Help
|
39 |
|
40 | ## Solid Community Forum
|
41 |
|
42 | 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.
|
43 |
|
44 | ## Bugs and Feature Requests
|
45 |
|
46 | - For public feedback, bug reports, and feature requests please file an issue via [GitHub](https://github.com/inrupt/solid-client-authn/issues/).
|
47 | - For non-public feedback or support inquiries please use the [Inrupt Service Desk](https://inrupt.atlassian.net/servicedesk).
|
48 |
|
49 | ## Prerequisite
|
50 |
|
51 | Any of the `solid-client-authn` libraries require at least:
|
52 |
|
53 | - NodeJS 12.X.Y
|
54 | - npm 6.14.X
|
55 | **Note**: We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage your node version.
|
56 |
|
57 | The `solid-client-authn` libraries are compatible with [NSS](https://github.com/solid/node-solid-server/releases/tag/v5.3.0) 5.3.X and higher.
|
58 |
|
59 | ## Documentation
|
60 |
|
61 | - [Using the libraries from within the browser](https://docs.inrupt.com/developer-tools/javascript/client-libraries/tutorial/authenticate/)
|
62 | - [Inrupt documentation Homepage](https://docs.inrupt.com/)
|