• Week 29
    WEEK29

    v3.1.3

    • Fix AiChat component not scrolling instantly to the bottom on render when messages are already loaded.

    Dashboard

    • Added the ability to use website crawls and sitemaps as knowledge sources for your AI copilot.

    Website

    Contributors

    Contributors include:nimeshnayajuctnicholas

    2 authors

  • Week 28
    WEEK28

    v3.1.2

    • Improve URL sanitization in comments.

    v3.1.1

    • Adds experimental setting LiveObject.detectLargeObjects, which can be enabled globally using LiveObject.detectLargeObjects = true (default is false). With this setting enabled, calls to LiveObject.set() or LiveObject.update() will throw as soon as you add a value that would make the total size of the LiveObject exceed the platform limit of 128 kB. The benefit is that you get an early error instead of a silent failure, but the downside is that this adds significant runtime overhead if your application makes many LiveObject mutations.
    • Fix: also display errors in production builds when they happen in render methods defined with defineAiTool(). Previously, these errors would only be shown during development.
    • Fix an issue with the render component of tool calls not being displayed correctly when the tool call signal was read before it was registered.

    Examples

    Contributors

    Contributors include:ctnicholasnimeshnayajunviemarcbouchenoire

    4 authors

  • Week 27
    WEEK27

    v3.1.0

    • defineAiTool()() now takes an optional enabled property. When set to false, the tool will not be made available to the AI copilot for new/future chat messages, but still allow existing tool invocations to be rendered that are part of the historic chat record.

    • RegisterAiTool now also takes an optional enabled prop. This is a convenience prop that can be used to override the tool’s enabled status directly in React.

    • Reasoning parts in AiChat are now automatically collapsed when the reasoning is done.

    • Add collapsible prop to AiTool to control whether its content can be collapsed/expanded.

    • Add InboxNotification.Inspector component to help debugging custom inbox notifications.

    • Add support for Redux v5.

    • Fix default z-index of collaboration cursors, and make them inherit their font family instead of always using Arial.

    • Add lb-lexical-cursors class to the collaboration cursors’ container.

    • Improve mentions’ serialization.

    • Improve mentions’ serialization.

    Contributors

    Contributors include:nviemarcbouchenoiresugardarius

    3 authors

  • Week 26
    WEEK26

    Dashboard

    • Fix caching issue when editing notification settings.

    Website

    Contributors

    Contributors include:pierrelevaillantstevenfabresugardarius

    3 authors

  • Week 25
    WEEK25

    v3.0.0

    Liveblocks 3.0 is our third major release, focusing on our newest product, AI Copilots. We’ve used this as an opportunity to tidy up some of our existing APIs, ensuring consistency throughout our offering.

    For full upgrade instructions and codemods, see the 3.0 upgrade guide.

    • TypeScript 5.0 is now the minimum supported version.

    • Remove deprecated APIs, see the deprecated section in the upgrade guide to learn more.

    • Introduce hooks and APIs for AI Copilots: useAiChats, useAiChat, useDeleteAiChat,useSendAiMessage, RegisterAiTool, RegisterAiKnowledge, etc.

    • Rename UPDATE_USER_NOTIFICATION_SETTINGS_ERROR to UPDATE_NOTIFICATION_SETTINGS_ERROR when using useNotificationSettings or useUpdateNotificationSettings.

    • Introduce pre-built components for AI Copilots: AiChat, AiTool, etc.

    • The onMentionClick prop on Thread and Comment now receives a MentionData object instead of a userId string.

    • The Mention component on the Comment.Body and Composer.Editor primitives now receives a mention prop instead of a userId one.

    • The MentionSuggestions component on the Composer.Editor primitive now receives a mentions prop instead of a userIds one, and the selectedUserId prop has been renamed to selectedMentionId.

    • Rename LiveblocksUIConfig to LiveblocksUiConfig for consistency with other Liveblocks APIs.

    • Remove deprecated htmlBody/reactBody properties from prepareThreadNotificationEmailAsHtml/prepareThreadNotificationEmailAsReact, use body instead.

    • Remove htmlContent/reactContent properties from prepareTextMentionNotificationEmailAsHtml/prepareTextMentionNotificationEmailAsReact, use content instead.

    • The prepareTextMentionNotificationEmailAsReact and prepareTextMentionNotificationEmailAsHtml functions’ returned data changed slightly:

      • The id property is now named textMentionId, it refers to the mention’s Text Mention ID, not the user ID used for the mention
      • The id property now refers to the mention’s ID, as in the user ID used for the mention
    • The element prop received by the Mention component in prepareTextMentionNotificationEmailAsReact now contains an id property instead of userId, and a new kind property to indicate the mention’s kind.

    • The getMentionedIdsFromCommentBody utility has been replaced by getMentionsFromCommentBody.

    Dashboard

    • Introduce an AI Copilots view to manage copilots and their knowledge.

    Examples

    Website

    Contributors

    Contributors include:adigauctnicholasflowflorentjrownymarcbouchenoirenimeshnayajunvieofoucherotpierrelevaillantstevenfabresugardarius

    11 authors

  • Week 22
    WEEK22
    • Fix an issue with subpath imports (e.g. @liveblocks/react/suspense) and CommonJS which could happen with certain bundlers.

    Contributors

    Contributors include:marcbouchenoire

    1 authors

  • Week 19
    WEEK19
    • Disable or hide actions in Thread and Comment components for users without permission to perform them, such as adding reactions or (un)resolving threads.

    Contributors

    Contributors include:marcbouchenoire

    1 authors

  • Week 18
    WEEK18

    v2.24.1

    • Fix for occasional desync issue.

    v2.24.0

    We are introducing thread subscriptions to add more granularity to thread notifications, allowing users to subscribe to threads without participating or unsubscribing from specific ones.

    We are also using this opportunity to rename some of the concepts around notifications and notification settings to improve clarity. None of these changes are breaking but you can learn more about them, their rationale, and how to automatically apply them with a codemod in our Upgrade Guide for 2.24.

    • Add "Subscribe to thread" and "Unsubscribe from thread" actions to Thread and thread InboxNotification out of the box.

    • Add useSubscribeToThread and useUnsubscribeFromThread hooks.

    • Add subscribe and unsubscribe methods to the existing useThreadSubscription hook.

    • Add support for textMentions in room subscription settings.

    • Rename useRoomNotificationSettings and useUpdateRoomNotificationSettings to useRoomSubscriptionSettings and useUpdateRoomSubscriptionSettings.

    • Add subscribeToThread, unsubscribeFromThread, getThreadSubscriptions and getUserRoomSubscriptionSettings methods.

    • Add support for textMentions in room subscription settings.

    • Rename getRoomNotificationSettings, updateRoomNotificationSettings, and deleteRoomNotificationSettings to getRoomSubscriptionSettings, updateRoomSubscriptionSettings, and deleteRoomSubscriptionSettings.

    • Add Room.subscribeToThread and Room.unsubscribeFromThread methods.

    • Methods which return threads and their associated inbox notifications now also return the thread’s associated subscriptions.

    • Add support for textMentions in room subscription settings.

    • Rename Room.getNotificationSettings and Room.updateNotificationSettings to Room.getSubscriptionSettings and Room.updateSubscriptionSettings.

    MCP server

    • New MCP server has been created for Liveblocks.
    • Create and modify rooms, threads, comments, notifications, more.
    • Read realtime Storage and Yjs values.
    • Broadcast custom events to connected clients.
    • Mark threads and notifications as read/unread.

    Documentation

    Website

    • New trust center has been created, and links added to our website.

    Contributors

    Contributors include:ctnicholasmarcbouchenoireofoucherotflowflorent

    4 authors

  • Week 17
    WEEK17

    v2.23.2

    • Add closeAi Tiptap command to manually close the AI toolbar.

    • Fix AiToolbar focus behavior in Safari.

    • Fix FloatingToolbar focus behavior in Safari.

    • Fix FloatingToolbar focus behavior in Safari.

    v2.23.1

    • Fix potential runtime error in browsers that do not support Symbol.dispose yet.

    • Fix a bug in .mutateStorage() and .massMutateStorage() where mutating storage could potentially corrupt the storage tree.

    v2.23.0

    • Expose new property triggeredAt for notification webhook events.

    • The prepareThreadNotificationEmailAsHtml and prepareThreadNotificationEmailAsReact functions are now avoiding duplicated comments between two emails data.

    • Improve event propagation from Composer and the emoji pickers in Comment/Thread.

    • Fix crash when unmounting. Thank you @nperez0111!

    • Fix withLiveblocksEditorOptions not passing all options to BlockNote. Thank you @chadnorvell!

    Documentation

    • New AI Copilots features page, highlighting all upcoming features.
    • Mention first day free policy.
    • Small updates to docs homepage

    Dashboard

    • Refined billing and usage settings page, now displaying billed and non-billed users for monthly active users (MAUs) metric.

    Website

    Contributors

    Contributors include:marcbouchenoireflowflorentsugardariusnperez0111chadnorvellnviectnicholaspierrelevaillant

    8 authors

  • Week 14
    WEEK14

    v2.22.3

    • The InboxNotification component now uses resolveRoomsInfo for textMention notifications to make them link to the mentions’ room automatically if href isn’t set.

    • Fix names capitalization in lists. (e.g. the list of who reacted in reactions’ tooltips)

    • Add emojibaseUrl advanced option on LiveblocksUIConfig to allow choosing where Emojibase’s data used by the Liveblocks emoji picker is fetched from: another CDN, self-hosted files, etc.

    • Fix: Update dependencies resolution.

    • Fix: Avoid <AnchoredThreads /> threads rendering if the editor's view is null.

    Contributors

    Contributors include:marcbouchenoirejrowny

    2 authors

We use cookies to collect data to improve your experience on our site. Read our Privacy Policy to learn more.