Storage block

Storageblock
Beta

Synchronize your application state between users, enabling them to edit the same data in real‑time.

Sign up for free

Designed for developersSynchronize your application state between users

Liveblocks integrates directly with popular frameworks and state‑management libraries, making it easy to enable anyone to edit and view the same data in real‑time.

User A
Change the text
UserB
Change the text
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { LiveObject } from "@liveblocks/client";
import { useStorage, useMutation } from "./liveblocks.config";
// Pass these to RoomProvider
const initialStorage = {
scientist: new LiveObject({
firstName: "Ada",
lastName: "Lovelace",
}),
};
export default function Form() {
const scientist = useStorage(root => root.scientist);
// => { firstName: "Ada", lastName: "Lovelace" }
const update = useMutation(({ storage }, field, value) => {
storage.get('scientist').set(field, value);
}, []);
return (
<>
<input
value={scientist.firstName}
onChange={(e) => { update("firstName", e.target.value) }
/>
<input
value={scientist.lastName}
onChange={(e) => { update("lastName", e.target.value) }
/>
</>
);
}

Packed with featuresEverything you need to make any product multiplayer

Focus on your core product. Liveblocks APIs are carefully crafted to enable you to create world-class multiplayer experiences in minutes, not months.

Customer story

Motionbox is a collaborative video editor that works directly in the browser. With Liveblocks, Motionbox was able to generate 25% more conversions than what they had ever gotten before.

Read customer story

More than just storageYour end-to-end real‑time collaboration solution

Liveblocks is a set of APIs and tools that helps you create performant and reliable multiplayer experiences in minutes. Presence and analytics blocks are also included.