Guides / Get started - Get started with JavaScript

This guide assumes that you're already familiar with Javascript and that you already have a way to bundle your javascript for the client.

Alternatively, you can copy this example and follow the instructions in the README:

Run the following command to install the Liveblocks client package:

npm install @liveblocks/client

@liveblocks/client lets you connect to Liveblocks servers.

To connect to Liveblocks, you need to create a Liveblocks client with createClient from the front-end.

1
2
3
4
5
6
7
import { createClient } from "@liveblocks/client";
// Create a liveblocks client
// Replace this key with your secret key provided at https://liveblocks.io/dashboard/apikeys
const client = createClient({
publicApiKey: "pk_live_xxxxxxxxxxxxxxxxxxxxxxxx"
});

Liveblocks should now be installed into your project!

A room is the virtual space where people collaborate. To create a multiplayer experience, you’ll need to connect your users to a Liveblocks room following the instructions below.

You can easily connect to a room by using client.enter as shown below.

const room = client.enter("your-room-id");

Now that we have our room setup, we can start using Liveblocks Client methods to share any kind of data between users. For instance, Room.subscribe.others allows us to subscribe to the other users updates.

1
2
3
4
5
6
7
8
9
10
11
12
13
const room = client.enter("your-room-id");
const container = document.getElementById("root-container");
room.subscribe("others", (others) => {
if (others.count === 0) {
container.innerHTML = "You're the only one here.";
} else if (others.count === 1) {
container.innerHTML = "There is one other person here.";
} else {
container.innerHTML = "There are " + others.count + " other people here.";
}
});

Using the public key allows you to use Liveblocks without implementing your own authentication endpoint. It’s great for prototyping and marketing websites.

If you want to implement your own security and define if the current user has access to a specific room, you can follow the Authentication guide.

If you are using Express, you can also check the Express Authentication guide.

Explore our examples below to see what you can do with Liveblocks.

  • Image of Live cursors

    Live cursors

    4 examples
    View
  • Image of Live avatar stack

    Live avatar stack

    2 examples
    View
  • Image of Live selection

    Live selection

    3 examples
    View