/client-web

OpenTDF client for browsers

Primary LanguageTypeScriptBSD 3-Clause Clear LicenseBSD-3-Clause-Clear

OpenTDF Web Browser Client opentdf

This project is focused on providing web client support for the OpenTDF family of data protection formats and protocols. Notably, it is a web-friendly library @opentdf/client, and tools and support for testing it and building it into web applications.

Evaluate

Do you want a quick demonstration of OpenTDF? See Quickstart

Integrate

Ready to begin integrating into your system?
Start a local, blank cluster. See Integrate

Usage

  const oidcCredentials: RefreshTokenCredentials = {
    clientId: keycloakClientId,
    exchange: 'refresh',
    oidcRefreshToken: refreshToken,
    oidcOrigin: keycloakUrl,
    organizationName: keycloakRealm
  }
  const authProvider = await AuthProviders.refreshAuthProvider(oidcCredentials);
  const client = new NanoTDFClient(authProvider, access);
  const cipherText = await client.encrypt(plainText);
  const clearText = await client.decrypt(cipherText);

Examples

Review examples to see how to integrate. See Examples

Distribute

make dist

Contribute

Prerequisites

Developing with this code requires a recent version of npm and node.

Build

To check out, build, and validate your installation, and test the sample web application, you may:

nvm use
make test
make start