v16.9.0

Release Date: November 7, 2025

Overview

Major sync overhaul with WebSocket multiplexing, new landing page, and extensive performance improvements.

New Features

  • WebSocket Multiplexing: New connection multiplexing with workspace:block document format for efficient sync
  • Sync Progress Indicator: Elegant floating sync indicator above heap button with manual sync trigger
  • Pinch-Zoom: Added pinch-zoom functionality for image and video previews
  • Block Compaction: Implement block compaction feature for YDoc optimization
  • YDoc Inspector: Debug tool for inspecting YJS documents
  • New Landing Page: Revamped landing page with landing videos

Improvements

  • Optimized getBlockManagers to load blocks in parallel
  • Performance logging for heap switching
  • Selection sidebar shows YJS info instantly
  • Better pinned blocks display and section
  • Watchers for sidebar order and block changes to reload pinned blocks
  • Advanced selection sidebar section
  • Proper HTTPS for WebSockets
  • Selection sidebar design improvements with image size and word count
  • Height for horizontal grid app properly set
  • Content resize transitions work correctly
  • Serverside preview generation for medium thumbnails
  • Video previews via sprite for new Caddy file

Sync System

  • Centralized sync implementation in SyncService
  • WebSocket connection multiplexing
  • Race condition fixes with ON CONFLICT clauses
  • Server-scanned files marked as is_uploaded = true
  • Sync delays optimization
  • Light sync and hard sync refresh events
  • Fix for UI lockup during sync on Capacitor apps
  • Fixed blocks being saved with null workspace_id

Self-Hosted

  • Pull heap flow for self-hosted
  • Better select for heap switching and syncing
  • Dev servers are now removable
  • Fixed storage progressbar
  • Better server migration
  • Added git branchless commands to readme

Mobile

  • Android proper keyboard handling
  • Create sheet resumable fix
  • Search working with composable
  • Sync retain block manager logic
  • New keyboard event listeners in centralized store
  • Compatible mode for Android bars

UI/UX

  • Styled collaboration cursor
  • Collaboration info and IDs in sidebar
  • Removed bottom nav height from grid app horizontal (with min height)
  • Settings has padding
  • Pinned block migration for existing setups

Bug Fixes

  • Fixed connection status badge with multiplexing
  • Fixed GridApp seamless filter and refresh
  • No sync on startup with nicer indicator appear
  • Fixed sync indicator jarring animation
  • Fixed sync indicator clipping by teleporting to modals container
  • Fixed MultiGrid refresh after sync using event bus
  • Removed excessive 'No requested files' logging
  • Only changes update the updated_at for a block
  • BlockManager clones YDoc for size estimation (fix type already defined error)
  • Fixed first boot flow
  • Delete heap flow corrected
  • Keep account tab
  • No duplicate prod servers
  • User public URL first, fetch user data after login