Week 34 Examples
- Add new features and polish to the Next.js Overlay Comments and Next.js Canvas Comments examples.
- Comments now flip when previously they would go offscreen, and other small bugs were fixed.
Week 33 v2.5.1
- Fix
LiveblocksProviderupdate/changeevent not returningremovedusers.
v2.5.0
-
Add
useIsInsideRoomhook, useful for rendering different components inside and outside ofRoomProvider. -
Fix a bug in
useEditorStatuswhich prevented it from returning a correct status whenLexicalPluginwas rendered conditionally. -
Fix remote cursors not displaying user names.
-
Improve event propagation in
Composer.
@liveblocks/codemod- Prevent modifying files that weren’t changed by the codemods.
- Fix
Week 32 Website
- New blog post: What’s new in Liveblocks: July edition.
Dashboard
- Add the ability to see the response body of webhook attempts in the webhook event details dialog (found in the "more" dropdown).
Documentation
- Add API reference for
liveblocks.markThreadAsResolvedandliveblocks.markThreadAsUnresolved.
Week 31 Dashboard
- Add the Room API docs to the dashboard. Copy pre-filled code snippets from the API reference directly from the Room detail page.
- Optimize the width of rooms, schemas, and webhooks lists when a detail view is opened for more comfort on medium-sized screens.
Documentation
- Updated How to modify Storage from the server for Liveblocks 2.0.
- Fixed various typos.
- Show public/secret keys within the Bash code snippets for connected users.
Week 30 v2.4.0
- Add vanilla
Comments
and
Notifications
APIs to
ClientandRoom, enabling these products outside of React.
Documentation
- Add info on new
Comments
and
Notifications
methods in
@liveblocks/clientAPI reference. - Add info on typing thread metadata to React UI API reference.
- Various small fixes.
Dashboard
- Add room search functionality in the Rooms tab of a project.
- Include creation dates in the rooms table list.
- Fix number formatting issues for document sizes.
- Implement sorting options by room ID, last connection date, comments count, documents size, and creation date.
- Improve date formatting across the dashboard. Now using more human-readable relative dates, with absolute dates displayed on hover.
- Display the number of currently online users on the room details page.
- Add room deletion option in the detail page menu.
- Improve rooms table list responsiveness on mobile.
- Add vanilla
Comments
and
Notifications
APIs to
Week 29 v2.3.0
-
New default components:
AnchoredThreadsandFloatingThreadsto display threads that are tied to a specific part of the document, similar to Notion, Linear, etc:FloatingThreadsdisplays floatingThreadcomponents below text highlights in the editor.AnchoredThreadsdisplays a list ofThreadcomponents vertically alongside the editor.- These components can be used in the same application to create a UI that works on both mobile and desktop.
-
Add
useDeleteInboxNotificationanduseDeleteAllInboxNotificationshooks. -
Fix
resolvedquery not being applied when filtering threads withuseThreads. -
Various refactorings to Suspense internals.
-
Add "Delete notification" action to
InboxNotification. -
Hide "Mark as read" action in
InboxNotificationwhen already read. -
Improve keyboard navigation within emoji pickers.
-
Add
deleteInboxNotificationanddeleteAllInboxNotificationsmethods.
Examples
- Added delete all notifications button to notifications examples.
Documentation
- Open the config file by default in the interactive broadcasting events tutorial.
Website
- Fix changelog images on mobile.
-
Week 28 Week 27 v2.2.0
We are making
resolveda first-class citizen property on threads, for more information about this change please read our Upgrade Guide for 2.2.-
Add
useMarkThreadAsResolvedanduseMarkThreadAsUnresolvedhooks. -
Support
query.resolvedwhen filtering threads. -
The
useStorageStatushook now also has a{ smooth: true }setting to make building calm UIs with it a bit easier. -
The
useClient()hook is now also available for users ofcreateRoomContext()and/orcreateLiveblocksContext(). -
Fix: avoid unnecessary re-renders if inbox notifications haven't changed.
-
Use first-class citizen
resolvedproperty inThreadcomponent. -
Preserve rich text when pasting into the composer.
-
Add support for custom links to the composer. (either by pasting URLs with plain text selected or by pasting existing links)
-
Preserve whitespace and empty lines in comments.
-
Mark threads as read when visible (like before), but only if the window is focused.
-
Fix improper
useTransitionfallback which would break on React versions lower than 18. -
Add
markThreadAsResolvedandmarkThreadAsUnresolvedmethods. -
Add
ThreadMarkedAsResolvedEventandThreadMarkedAsUnresolvedEventwebhook events. -
Support
query.resolvedwhen querying threads. -
Upgrade
lexicalpeer dependency to version^0.16.1that fixes compatibility issues with Next.js versions 14.2.0 and above. -
Upgrade
lexicalpeer dependency to version0.16.1.
Documentation
- Add
useStorageStatusinformation. - Fix code snippet in Nested data types page of interactive tutorial.
Website
-
Week 26 v2.1.0
-
Various internal refactorings
-
Add new hook
useStorageStatus, which returns the current storage status of the room, and will re-render your component whenever it changes. This can used to build "Saving..." UIs. -
Add
useDeleteThreadhook to delete a thread and its associated comments. -
Fix: add missing JSDoc comments
-
Fix: improve some error messages and stack traces to contain more info
-
Refactorings to Suspense internals
-
Fix improper
useSyncExternalStoreimport which would break on React versions lower than 18.
v2.0.5
- Improved DX:
useDeleteThreadwill now throw a client-side error if someone else than the thread owner tries to delete the thread. This will help you catch and handle this case more easily.
Documentation
- Updated the interactive tutorial for Liveblocks 2.0.
Website
- New blog post: Introducing Liveblocks collaboration kit for Figma.
- Updated contact page with two separate forms for sales and support.
Processes
- Versioning and publishing of public packages is now decoupled from versioning/publishing of our CLI tools.
-
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
-