Week 32 v3.23.1
- Improve version history components for versions without authors, which can
occur with server-only changes. Add
HISTORY_VERSION_SUMMARY_AUTHORS_LISTand updateHISTORY_VERSION_PREVIEW_AUTHORS_LISToverrides to reflect this.
Liveblocks dev server (v1.8.0)
- Add full support for LiveFile.
Examples
- Add version history to advanced React Flow examples.
Website
- New blog post: What's new in Liveblocks: July 2026.
- Improve version history components for versions without authors, which can
occur with server-only changes. Add
Week 31 Website
- New blog post: LiveFile: upload and share files in collaborative apps.
Examples
- Added a skill that can create examples, including images and code.
Week 30 v3.23.0
This release introduces
LiveFile: a new data structure to store files such as images and videos in a room's Storage tree.-
Add
room.uploadFile()to upload a file and return aLiveFile. -
Add
room.getFileUrl()to get access to aLiveFile. -
Add
useUploadFile()to upload a file and return aLiveFile. -
Add
useFileUrl()to get access to aLiveFile. -
Add
uploadFile()to upload a file and return aLiveFile. -
Add
getFileUrl()to get access to aLiveFile. -
Add
uploadAttachment()to upload comment attachments, combined withattachmentIdsparams increateThread(),createComment(), andeditComment(). -
Add methods to upload Storage files for
LiveFile, retrieve their download URLs, and handle multipart uploads. -
Add methods to upload comment attachments, including multipart uploads.
Examples
- Updated the
Collaborative Whiteboard and tldraw Whiteboard examples to support images using
LiveFilein Liveblocks Storage.
-
Week 29 Examples
- Updated the AI Slideshow Generator example to support multiple slides, drag-and-drop, and double-click to edit text.
Documentation
- Added links to examples at the top of relevant get started guides.
- Added links to guides in overview pages.
- Added more info on comments metadata throughout.
Website
New blog post: Comments: private threads and a natural home for AI.
Dashboard
- Added a button to download a room's Liveblocks Storage as JSON from the dashboard's room detail view.
Week 28 v3.22.0
This release adds version history support for Storage: a version now snapshots both the room's Storage and Yjs documents (previously Yjs only).
-
Creating a version now also snapshots Storage, not just Yjs, see docs.
-
useHistoryVersions()lists the room's versions. Each has avh_xxxid, see docs. -
useHistoryVersionStorageData("vh_xxx")returns that version's Storage as a read-onlyLiveObjectso you can visualize or diff it manually, see docs. -
useRestoreToStorageVersion("vh_xxx")restores the room's Storage to that version, as a single undoable change, see docs. -
useDeleteHistoryVersion()returnsdeleteHistoryVersion("vh_xxx")to permanently delete a version, see docs. -
Add methods for version history to list room versions, create a version snapshot, and delete a version.
Examples
- New example: AI Slideshow Generator.
Documentation
- New section on rendering custom components inside threads.
- Updated all pages in the pricing section, increasing clarity.
-
Week 27 v3.21.0
-
Add support for public and private threads. Threads now have a
visibilityproperty that is"public"by default but can be set to"private"when created. Permissions can be used to decide which threads a user has access to, and threads can also be queried by their visibility to create filtered views. -
Add scoped comments permissions such as
comments:public:writeandcomments:private:none. -
Breaking: Remove
typeandkindfields fromHistoryVersiontype. The backend no longer returns these. -
Add
visibilitytocreateThread. -
Support querying by
visibilityingetThreads. -
Add
visibilitytouseCreateThread. -
Support querying by
visibilityinuseThreads. -
Add
useHistoryVersionYjsData()hook to retrieve raw Yjs binary data for a given version. DeprecateuseHistoryVersionData()in its favor. -
Add
visibilitytocreateThread. -
Support querying by
visibilityingetThreads. -
Add a
visibilityprop toComposer. -
Prevent
Composerfrom collapsing after focusing and blurring unless it was explicitly meant to support a collapsed state.
Documentation
- New guide: How to add private commenting to your app.
- New guide: How to use public and private threads.
Examples
- Update Linear-like Issue Tracker_to use latest Next.js caching features.
Website
- New blog post: What's new in Liveblocks: June 2026.
-
Week 26 v3.20.1
- Fix a bug where sending a too large WebSocket message could sometimes
overwrite a room's top-level storage key with
initialStorage, causing data loss. Thanks for reporting @watemerald!
Dashboard
- Added support for manual and automatic re-ingestion of (web) knowledge sources at specified interval.
- Streamlined display of knowledge sources and linking/unlinking of knowledge sources and copilots.
- Fix a bug where sending a too large WebSocket message could sometimes
overwrite a room's top-level storage key with
Week 25 v3.20.0
-
Add support for new resource-specific permissions. You can now start from a
*:reador*:writebase, then grant or deny access per resource (storage, comments, feeds) using new permission strings likestorage:noneorcomments:read. -
Deprecate
session.FULL_ACCESSandsession.READ_ACCESSin favor of["*:write"]and["*:read"]respectively. -
Deprecate
room.getStorageSnapshot()in favor ofroom.getStorageOrNull().
Examples
- New example: AI Spreadsheet.
- New example: Realtime AI Elements Chats.
- Added “?” button to various examples, featuring a pop-up that explains how to use them.
-
Week 24 v3.19.5
- Fix a
LiveListdivergence after reconnects: a pendingpushcould under specific timing conditions during a reconnect still cause a divergence between clients, despite the fix from 3.19.4.
Liveblocks dev server (v1.6.1)
- Fix a
LiveListdivergence after reconnects: when a client re-sends a pendingpushop whose node the server had already stored (the original ack got lost in the disconnect)
- Fix a
Week 23 v3.19.4
- Fix
LiveList.push()so concurrent pushes from multiple clients no longer settle out of order. - Fix a bug where a
LiveObjectkey deleted while a client was offline would reappear on reconnect, preventing the two clients from reconverging. - Fix a bug where reconnecting would emit too many update notifications for
LiveObjectkeys whose values had not actually changed. - Fix a bug where deleting a nested live value from a
LiveObjectomitted the removed value (deletedItem) from the change notification.
Examples
- New example: Collaborative SuperDoc editor.
Documentation
- New guide: Get started with SuperDoc and Next.js.
- New guide: Get started with SuperDoc and JavaScript.
- New guide: Get started with SuperDoc and React.
- New guide: Get started with SuperDoc and Svelte.
- New guide: Get started with SuperDoc and Vue.js.
- Updated get started guides for Liveblocks Storage, featuring more hook examples.
Website
- New blog post: How humans and AI will work together in the next generation of apps.
- New blog post: What's new in Liveblocks: May 2026.
Liveblocks dev server (v1.6.0)
- Update internal storage format of dev server. Note that your local dev rooms are not automatically migrated and will appear as empty rooms after the upgrade.
- Fix