Shared collaborative state for Redux

Liveblocks empowers developers to embed performant collaborative features to any product in just days.

Companies of all sizes and industries use Liveblocks

Liveblocks Presence -
Show who's in a document

Liveblocks Presence enables you to add things like live avatars and cursors to you product.

import { createStore } from "redux";import { createClient } from "@liveblocks/client";import { enhancer } from "@liveblocks/redux";
const client = createClient({ /* ... */ });
const initialState = { cursor: { x: 0, y: 0 }}
const store = createStore( (state = initialState, action) => { /* ... */ }, enhancer({ client, // cursor is shared to other users in the room presenceMapping: { cursor: true } }));
// Get others people in the roomconst others = store.getState().liveblocks.others;
// And get their cursorsconst othersCursors = others .map(user => user.presence?.cursor);

Multiplayer Editing -
Realtime collaboration

Let users co-edit text and manipulate data simultaneously, in realtime—just like Figma or Notion.

import { createStore } from "redux";import { createClient } from "@liveblocks/client";import { enhancer } from "@liveblocks/redux";
const client = createClient({ /* ... */ });
const initialState = { scientist: { firstName: "Ada", lastName: "Lovelace" }}
export const store = createStore( (state = initialState, action) => { /* ... */ }, // Enhance your store and controls which parts // of your states are synced and persisted enhancer({ client, // scientist is synced across clients storageMapping: { scientist: true } }));

Turn your product into the space where people and AI collaborate