Skip to content
Welcome to the new, unified Livepeer documentation! 👋
Reference
Client

Client

The livepeer Client is a framework agnostic client that manages state and connection to a Livepeer provider. The createReactClient function wraps the Client with a React-specific caching layer for faster queries.

Usage

React
import { createReactClient } from '@livepeer/react';

The client can be created using createReactClient.

App.js
const client = createReactClient({
  provider: studioProvider({ apiKey: 'yourStudioApiKey' }),
});

Configuration

provider

Livepeer provider interface for connecting to the network.

const client = createReactClient({
  provider: studioProvider({ apiKey: 'yourStudioApiKey' }),
});

storage (optional)

The default strategy to persist and cache data. Used for both state management and query caching. Defaults to window.localStorage.

To disable the use of localStorage, we provide a convenient "no-op" storage option:

React
import {
  createReactClient,
  studioProvider,
  noopStorage,
  createStorage,
} from "@livepeer/react";
 
const client = createReactClient({
  provider: studioProvider({ apiKey: 'yourStudioApiKey' }),
  storage: createStorage({
    storage: noopStorage,
  }),
});

queryClient (optional)

The react-query QueryClient (opens in a new tab) used to cache/deduplicate queries. Defaults to caching for 24 hours and no retries.

const client = createReactClient({
  provider: studioProvider({ apiKey: 'yourStudioApiKey' }),
  queryClient: new QueryClient({
    defaultOptions: {
      queries: {
        cacheTime: 1_000 * 60 * 60, // 1 hour
        retry: 100,
      },
    },
  }),
});