Skip to content

LeafBase v1.1.1

Choose a tag to compare

@github-actions github-actions released this 20 Apr 14:09
· 22 commits to main since this release

Release Notes - v1.1.x

v1.1.1 β€” Smart Context Menu (Patch)

πŸ› Bug Fix: Context Menus Clipped by Screen Edge

Previously, right-clicking on items near the bottom or right edge of the window could cause the context menu to be partially hidden off-screen. This is now fully resolved.

  • Viewport-aware positioning: Context menus automatically detect when they would be clipped and flip upward or shift inward to stay within the visible area.
  • Zero flicker: Uses useLayoutEffect + getBoundingClientRect() to measure and reposition menus before the browser paints, ensuring no visual jump.
  • Applied across all 3 context menu locations:
    • Sidebar tree (Connection / Database / Collection)
    • Document Tree View
    • Document Table View

v1.1.0 β€” Dual-Engine Database Clone System

A major productivity release introducing a high-performance, one-way database cloning engine supporting both individual collections and entire databases.

✨ New Feature: Clone Collection & Clone Database

Right-click any Collection or Database in the sidebar to clone it to any other server or database β€” with full SSH tunnel support.

⚑ Engine 1: Native BSON Pipes (Fastest)

Uses mongodump | mongorestore piped directly in memory β€” no intermediate files written to disk.

  • Maximum throughput: Raw BSON wire transfer bypasses all JSON/EJSON serialization overhead
  • Auto-install: Automatically downloads MongoDB Database Tools if not present on the machine
  • SSH-aware: Reuses the existing SSH tunnel session so transfers stay encrypted end-to-end
  • Live log streaming: Every line from mongodump and mongorestore stderr is forwarded to the Execution Status panel in real time
  • Namespace remapping: Automatically handles database/collection renames during transfer via --nsFrom / --nsTo
  • Stop support: Kills both processes cleanly when the user clicks Stop

πŸ”§ Engine 2: Parallel Driver Clone (Universal)

Uses the Node.js MongoDB driver β€” works everywhere including MongoDB Atlas and restricted cloud environments where native tools are blocked.

  • Works without external tools: No mongodump required
  • Parallel batch writes: Configurable batch size and concurrent write threads (insertMany with ordered: false)
  • Pause / Resume / Stop: Full operation control with resumeId checkpointing so interrupted clones can continue where they left off
  • Database-level iteration: Sequentially clones all collections in a database with a unified global progress bar
  • Index & metadata sync: Recreates collection options and indexes on the target before transferring data

πŸ› οΈ Improvements & Fixes

  • Terminology: Renamed "Sync" β†’ "Clone" throughout the UI to accurately reflect the one-way operation
  • Adaptive CloneTab UI: Collection input fields are automatically hidden when cloning an entire database
  • Lazy connection loading: Clone operations now work even if the target connection was not yet opened in the sidebar
  • ID type mismatch fix: Resolved a bug where numeric connection IDs from connections.json failed to match string IDs in dropdowns
  • URI sanitization: Strips default database path (e.g., /admin) from connection URIs before passing to native CLI tools to prevent argument conflicts
  • URI caching: Active connection URI is now persisted in the session store so Engine 1 can access it without spawning duplicate SSH tunnels

LeafBase - A modern, cross-platform MongoDB GUI.