Introduction#

Inrupt provides Java Client Libraries can be used to build Solid applications. Solid applications refer to applications that conform to the Solid specifications .

JDK Version#

The Java client libraries requires JDK 11+.

Library Modules#

Inrupt’s Java Client Libraries are composed of different modules.

Solid Client and Data Modules#

Module

Description

solid-client-solid

Provides support for Solid clients and Solid resources, such as:

solid-client-webid

Provides support for WebID Profiles.

Solid Authentication and Authorization Modules#

Module

Description

solid-client-openid

Provides support for OpenID, such as:

solid-client-access-grant

Provides support for Access Grants, such as:

Additional Modules#

Underlying APIs (Publicly Available)#

The following modules provide the underlying APIs that are used by the other modules and are available for general use:

Base APIs

Description

solid-client-api

A layer that defines all the central abstractions used by the Java Client Libraries.

RDF Processing

Description

solid-client-jena

RDF processing that uses the Jena library.

solid-client-rdf4j

RDF processing that uses the RDF4J library.

Vocabulary

Description

solid-client-vocabulary

Provides convenience objects for Solid-related identifiers.

Underlying APIs (Internal Use)#

The following modules provide the underlying APIs that are used by the other modules; i.e., included as part of the other modules’ dependencies list but not intended for general use.

Module

Description

solid-client-core

Runtime implementations of Java Client Library APIs.

solid-client-uma

Provides support for UMA Token Exchange.

solid-client-jackson

JSON processing that uses the Jackson library.

solid-client-jsonb

JSON processing that uses the JSON-B library.

GitHub#