Week 25 v2.0.4
-
Improve TS error messages and error locations if custom
UserMetaorActivitiesDatatypes do not match their requirements. -
Add missing type export for
CommentReaction -
Don’t attempt to write missing initialStorage keys if the current user has no write access to storage. This will no longer throw, but issue a warning message in the console.
-
Add
useDeleteThreadhook to delete a thread and its associated comments.
v2.0.3
-
In
client.enterRoom(), the optionsinitialPresenceandinitialStorageare now only mandatory if your custom type requires them to be. -
In
<RoomProvider>, the propsinitialPresenceandinitialStorageare now only mandatory if your custom type requires them to be. -
Nesting
<LiveblocksProvider>s will now throw to prevent incorrect usage -
Prevent the composer from splitting text being composed.
-
Handle parentheses around and within auto links.
-
Count whitespace as empty to prevent posting empty comments.
-
Prevent clearing the composer if it's not handled. (via
onComposerSubmit) -
Add missing type exports
v2.0.2
- Add
deleteThreadmethod to the client to delete a room's thread. - Add the
threadDeletedwebhook event to notify when a thread is deleted. - Fix type signatures of
client.identifyUser()andclient.prepareSession()to requireuserInfoif it's mandatory according to your globalUserMetatype definition.
Examples
- New custom notifications example.
- Updated BlockNote example and guide to v0.14.1.
Documentation
- Create new guide on how to add users to Liveblocks text editor.
- Updated Lexical product page with new information.
- Improved Lexical get started guides.
- Improved
Liveblocks.initializeStorageDocumentsection. - Fixed typo with token syntax passed to
authEndpoint.
Website
-
Week 24 v2.0.0
This major release marks the maturity of Liveblocks. It contains new products (
@liveblocks/react-lexical) and clarifications (e.g.@liveblocks/react-commentsis now called@liveblocks/react-ui). t Also, we bring major DX improvements by allowing you to specify your types globally now. These types will be typed once and shared across all Liveblocks APIs, which includes your Node backend.In
@liveblocks/react, you can now import hooks directly:For full upgrade instructions and codemods, see the 2.0 upgrade guide.
-
Update config generation for Liveblocks 2.0.
-
Add
--upgradeflag to automatically update all Liveblocks package to their latest version. -
DX improvements: type once, globally, benefit everywhere
-
DX improvement: import hooks directly
-
DX improvement:
<ClientSideSuspense>no longer needs a function as itschildren -
New provider:
LiveblocksProvider(replaces the need forcreateClient) -
New hook:
useClient -
Tweak
useMutationerror message to be less confusing. -
Allow thread and activity metadata types to contain
undefinedvalues. -
Rename from
@liveblocks/react-comments. -
Rename
<CommentsConfig />to<LiveblocksUIConfig />. -
Improve
InboxNotificationprops types. -
Initial release.
-
Initial release.
-
LiveblocksProvideris no longer a default export, it’s nowimport { LiveblocksYjsProvider } from "@liveblocks/yjs". -
DX improvements: all Node client methods will pick up the same global types you’re using in your frontend
-
Rename
RoomInfotoRoomData. -
The webhook event
NotificationEvent’s type can represent multiple kinds of notifications. ("thread","textMention", and custom ones (e.g."$myNotification")) -
Initial release.
Documentation
- New API reference page for
@liveblocks/react-lexical. - Added lots of new information to
@liveblocks/reactAPI reference page. - Information includes details
Suspense
section, new
LiveblocksProviderprops, details on typing, and more. - Added a set of product pages for Notifications, with info on concepts, components, hooks, styling, and email notifications.
- Added product page for Lexical summarising all its features.
- Restructured and updated existing product pages for our new products.
- More information on the
NotificationEventwebhook, including the newtextMentionkind. - Created new guide on adding users to Liveblocks Notifications.
- Created new guide on adding users to Liveblocks Text Editor.
- Created new get started guides for our new Lexical packages.
- Added product badges to get started guides.
- Updated all get started guides for new type improvements.
- Updated API references for new type improvements.
- Updated various guides for new type improvements.
- Updated images and text on How Liveblocks works page.
Website
- We redesigned our website to represent the Liveblocks product offering more
accurately. Here are some of the key changes:
- New homepage with interactive 3D game in the hero.
- New page product page for Liveblocks Text Editor
- New page product page for Liveblocks Notifications
- New page product page for Liveblocks Sync Datastore
- Improved pricing page
- New navigation
- New blog post: Introducing Liveblocks 2.0.
Examples
- Added new example:
nextjs-lexical - Upgraded and adjusted all examples to 2.0
Infrastructure
- Webhooks are now available to everyone.
Dashboard
- Show Lexical information in rooms that use the new Lexical plugin.
-

Dashboard
- Added a brand new project analytics page with graphs that gives you better insights into active users, active rooms, comments, notifications, and data stored.
- Improved the billing and usage view.
- Moved Webhooks notification throttle interval setting to the project settings page
- Fixed a number formatting issue by enforcing US number formatting for all locations
Misc
- Ongoing internal refactorings to enable simpler setup for
@liveblocks/reactin the future.
Week 20 Dashboard
- Liveblocks events are now visible in the dashboard.
- New "Events" tab within a project.
- Filter room events by type (e.g.
userEntered,userLeft), exactroomId, and exactuserId. - Select a date range (with available presets).
- Click on an event to open the event details modal.
- Navigate between events using the previous/next buttons without leaving the modal.
- On the room's detail page, click "View room events" at the top right to access the room events.
- Added a new date picker to the "Overview" and "Events" pages.
- Improved onboarding.
- Making sure the default team name isn't too long and can be submitted.
- Improved form submission performance by only calling the required API endpoints.
Misc
- Fixed broken link in one onboarding email.
- Internal refactorings to enable simpler setup for
@liveblocks/reactin the future.
- Liveblocks events are now visible in the dashboard.
Week 19 Website
- New changelog section.
Documentation
- Completely rewritten API reference for
@liveblocks/client. - New components for showing arguments, returns, properties.
- Refreshed banner components.
- Add webhooks source IP addresses for receiving endpoints behind NAT or firewalls.
- Fixed a typo in query language rooms guide.
Dashboard
- The project quickstart connection status can now be dismissed.
- Improved copy to clarify the difference between production and development projects.
- Improved project overview banner copy for when Liveblocks hasn't yet been set up.
Infrastructure
- Made batch processing of webhook and other events more efficient at scale.
v1.12.0 @liveblocks/react- Add support for custom notification kinds.
- Add new
useInboxNotificationThreadhook tocreateLiveblocksContext, which can be used to retrieve threads within thread notifications for more flexibility. - Add support for
startsWithoperator touseThreadswhen filtering based on metadata.
@liveblocks/react-comments- Add support for custom notification kinds to the
InboxNotificationcomponent via thekindsprop and theInboxNotification.Customcomponent. - Add destructive color tokens. (
--lb-destructive,--lb-destructive-foreground, and--lb-destructive-contrast)
@liveblocks/node- Add
triggerInboxNotificationmethod that lets you trigger custom notification kinds. - Enable filtering rooms by room ID in the
getRoomsmethod. This works viaquery.roomId,metadatais deprecated and is nowquery.metadata. - Add support for our query language when filtering with the
getRoomsandgetThreadsmethods. - Add support for an alternative object-based query notation to the
getRoomsandgetThreadsmethods, which supports exact matches and thestartsWithoperator.
v1.11.3 @liveblocks/client- Fixes a potential
RangeError: Maximum call stack size exceededin applications that produce many operations
@liveblocks/node- Add missing
updatedAtproperty toYDocUpdatedEventtype. (@alexlande)
- Fixes a potential
v1.11.2 create-liveblocks-app- Add support for the updated Starter Kit.
v1.11.1 @liveblocks/react-comments- Fix the composer’s placeholder to appear instantly instead of being initially invisible.
- Fix the default composer’s actions not being disabled when the composer is.
@liveblocks/node- Fix "
processis undefined" issue in Vite builds. This issue was already fixed for@liveblocks/core, but not for@liveblocks/nodeyet.
DevTools
- Improve tree view to visualize Y.js documents and inspect Y.js awareness.
v1.11.0 @liveblocks/node- Add
updateRoomIdmethod that lets you update the room ID of the specified room. - Add an optional
guidparameter tosendYjsBinaryUpdateandgetYjsDocumentAsBinaryUpdateto point to a Yjs subdocument with the specified guid.
@liveblocks/react- Add
scrollOnLoadoption touseThreads: enabled by default, this option controls whether to scroll to a comment on load based on the URL hash. useUseranduseRoomInfono longer support returning nothing. Returningundefinedwill now be treated as an error.- Fix bug where
useUseranduseRoomInforeturned an extradatasuperfluous property. - Fix bug where customizing types on
createLiveblocksContextwould conflict with the providedClient.
@liveblocks/react-comments- Add actions to
InboxNotificationwith a single action for now: marking as read. - Improve actions hover behavior in
Comment/Thread. - Change
Commentbackground color when it’s linked to or being edited.
- Add