Skip to content

Releases: liveblocks/liveblocks

3.18.4

20 Apr 09:44

Choose a tag to compare

@liveblocks/emails

  • Mark yjs and y-prosemirror as required peer dependencies.

3.18.3

17 Apr 12:50

Choose a tag to compare

@liveblocks/*

  • Third-party libraries like yjs, @tiptap/*, and @blocknote/* are now declared as peer dependencies instead of bundled dependencies across all packages that use them.

3.18.2

15 Apr 10:27

Choose a tag to compare

@liveblocks/client

  • New experimental room.history.disable(fn) API that allows running storage mutations without them appearing on the undo/redo stacks. Intended for background/async writes (e.g. writing back AI generation results) that should not be undoable.
  • Fix ToJson type losing specific value types for Record<string, T> fields in Storage

3.18.1

13 Apr 11:40

Choose a tag to compare

@liveblocks/react-ui

  • Mentions suggestions now appear in more cases after typing @:
    • After punctuation like !, ., (, etc. (e.g. Hello!@,
      cc: the other team (@)
    • After emojis (e.g. Hello 👋@)

3.18.0

08 Apr 09:41

Choose a tag to compare

For full upgrade instructions, see the 3.18 upgrade guide.

@liveblocks/client

  • Breaking: useStorage now returns plain objects for LiveMap values instead of Map instances. Legacy APIs have been removed: .toImmutable(), .toObject(), .toArray().
  • New .toJSON() on all Live structures, returning a cached JSON-compatible snapshot. JSON.stringify(root) now just works.
  • New LiveObject.from(obj) to create a LiveObject from plain JSON, recursively converting nested objects/arrays to Live structures.
  • New .reconcile(obj) to efficiently reconcile a LiveObject tree to match a JSON snapshot, only mutating what changed.
  • initialStorage accepts LiveObject.from() result directly.

@liveblocks/react-flow/node

  • New mutateFlow() API for reading and mutating React Flow data from a Node.js backend. Install via npm i @liveblocks/react-flow, import from @liveblocks/react-flow/node. See the docs.

@liveblocks/react-ui

  • Add standalone Avatar component to complement AvatarStack for more fine-grained customization.
  • Add variant prop to AvatarStack to support outlined avatars.

@liveblocks/zustand and @liveblocks/redux

  • Fix: Initial storage seeding no longer creates an undo frame.
  • Fix: Presence updates are now batched with storage updates.

3.17.0

02 Apr 15:00

Choose a tag to compare

@liveblocks/react-flow

  • Introduce the package. Install with npm install @liveblocks/react-flow.
    Provides hooks and components that add collaboration to any React Flow diagram
    using Liveblocks Storage:
    • Use the useLiveblocksFlow hook to make React Flow synced and
      collaborative.
    • Use the Cursors component to show other users' cursors inside React Flow.

@liveblocks/react-ui

  • Allow customizing cursors in the Cursors component by passing a
    components={{ Cursor: MyCursor }} prop.

3.16.0

31 Mar 16:20

Choose a tag to compare

@liveblocks/chat-sdk-adapter

  • Introduce the package. Install with
    npm install @liveblocks/chat-sdk-adapter. Provides a
    chat-sdk-compatible backend adapter
    backed by Liveblocks Comments: webhooks, posting and editing messages,
    reactions, paginated fetches, thread and channel helpers, and optional
    resolveUsers / resolveGroupsInfo hooks.

@liveblocks/react

  • Add Feeds hooks: useFeeds, useFeedMessages, useCreateFeed,
    useDeleteFeed, useUpdateFeedMetadata, useCreateFeedMessage,
    useDeleteFeedMessage, and useUpdateFeedMessage.

@liveblocks/node

  • Add REST client methods for Feeds: getFeeds, getFeed, createFeed,
    updateFeed, deleteFeed, getFeedMessages, createFeedMessage,
    updateFeedMessage, and deleteFeedMessage.

Python SDK

  • Add Feeds REST API support on the sync and async clients (get_feeds,
    get_feed, create_feed, update_feed, delete_feed, get_feed_messages,
    create_feed_message, update_feed_message, delete_feed_message) with
    matching request/response models.

@liveblocks/client

  • Add Feeds: room-scoped feeds with metadata and messages and APIs to list,
    create, update, and delete feeds and messages (fetchFeeds,
    fetchFeedMessages, addFeed, updateFeed, deleteFeed, addFeedMessage,
    updateFeedMessage, deleteFeedMessage).

@liveblocks/react-ui

  • Add body prop to Comment to allow overriding only the default rich-text
    comment body while still keeping attachments, reactions, and
    additionalContent as is, unlike when using the children prop.
  • Fix AvatarStack negative margin breaking alignment.

3.15.5

23 Mar 13:58

Choose a tag to compare

@liveblocks/tiptap

  • Improve clipboard handling when text nodes containing comments were copied or
    pasted.

Python SDK

  • Fix request body for certain endpoints, like update_room_id,
    initialize_storage_document incorrectly set as optional.

3.15.4

19 Mar 15:39
1304531

Choose a tag to compare

@liveblocks/node

  • Add Liveblocks.getAttachment() method to get an attachment's metadata and a
    presigned download URL.

Python SDK

  • Add get_attachment() method to get an attachment's metadata and a presigned
    download URL.

3.15.3

18 Mar 08:17
26e1933

Choose a tag to compare

Python SDK

  • Introduce the Python package. Install with pip install liveblocks. Provides
    sync and async clients for the full Liveblocks API (rooms, storage, threads,
    comments, etc.) for backend use.

@liveblocks/react-ui

  • Add showSubscription prop to Thread to control whether to show the
    thread’s subscription status.