This guide assumes that you already have installed Liveblocks into your project and that you’re already familiar with Express.
Run the following command to install Liveblocks package:
@liveblocks/node
is used from the backend to setup the authentication
endpoint.
Users can only interact with rooms they have access to. You can configure permission access by creating a REST endpoint on your express server. You will implement your own security and define if the current user has access to a specific room.
Create a POST endpoint that will read the room from the JSON body. Ensure that
the caller of this endpoint is a valid user by validating the cookies or
authentication headers and that it has access to the requested room. Then use
authorize
to generate a token and return the body as a response.
Note that UserMeta represents static/readonly metadata on each User, as provided by your own custom auth backend (if used). Useful for data that will not change during a session, like a User's name or avatar, eg:
The userId
used in the authorize
function corresponds to userId used in our APIs when setting permissions (e.g. in create room).
You can use the following example to use data from userId
and userInfo
on the front end.
Here is a diagram that shows how things work behind the scenes.
To connect to Liveblocks, you need to create a Liveblocks client with
[createClient
][] from the front-end and set the authEndpoint
option based on
the path of the endpoint created earlier.
Liveblocks should now be integrated with your product!