VisuaLeaf v1.0.2715 Release Notes
Release Date: November 6, 2026
Covers everything since v1.0.2686.
Headline: Make the Home Page Yours, See a Sync Before It Runs, and Shortcuts That Always Work
The biggest change in this release is the first thing you see: the home page is now yours to arrange. Add pages, drag and resize tiles, pick a preset, and put live dashboards, single charts and your favorite tables right where you open the app.
Also shipping:
- A dry run for every Compare sync. See exactly what a sync would insert, update and delete, with live progress and a Stop button, and download the full plan as
.sqlor.jsbefore anything is written. - Keyboard shortcuts that always work. Clicking a toolbar button no longer switches off your table shortcuts, SQL tables get the same editing keys as MongoDB, and the Keyboard Shortcuts window tells you which keys are free.
- Charts that draw themselves. A new chart from a query opens with a sensible chart already on screen, and the field boxes are named after what they control (X axis, Y axis, Slices…).
- Select several cells and drag them into the query builder. Each cell becomes the right filter for its type, in both SQL and MongoDB.
- Oracle Table Management opens tables in about 0.2 seconds, down from 4–9 seconds.
- Connection errors that don't lock you out. A wrong password on Test Connection is now one login attempt, not nine.
- A leaner, more private AI assistant. Each message sends a fraction of what it used to, sample data is capped and secrets are blanked, and a new AI Request Log shows exactly what was sent.
- Oracle fixes: JSON stored in CLOB columns now expands and edits like JSON, and following a foreign key no longer fails with ORA-00907.
Customizable Home Page
The home page used to be a fixed layout. Now you can shape it around how you work: a page for your daily dashboards, another for the tables you open every morning.
What you can see
- Pages. Name your own tabs on the home page, each with its own tiles. The tab strip only shows up once you have a second page, and VisuaLeaf reopens the page you used last.
- Live dashboards and charts on the home page. Any saved dashboard, or a single saved chart, can be a tile. A chart tile is drawn exactly as it looks on a dashboard and grows when you make the tile taller. Each tile loads only when you scroll to it, waits politely while its connections are closed (with a Connect & show button), and fills in as soon as they open.
- Favorites. Right-click any collection or table and choose Add to Home Favorites to open it in one click from the home page.
- Tiles for every tool, including Query Profiler, Schema Manager, Compare Data, Saved Items, Data Transfer, New Connection and Connection Manager, plus heading tiles you can label yourself.
- A new default home page, Classic. Your shortcuts are grouped under headings (Work with your data, Pick up where you left off, Build and move data, Get going) with your recent tabs alongside. The previous layout is still one click away as the Bento preset.
- Presets. Classic, Bento, Bento Sections, My work, Dashboard first, Calm, Original (the first VisuaLeaf home page), Sidebar and Focus, each previewed as a thumbnail before you apply it.
- Three tile looks: Compact, Card and Preview, in ten accent colors. Tint all recolors a whole page at once. Tiles adapt to their size: short tiles become a single line, tall ones show the feature's picture.
What you can do
- Click Customize, then drag, resize, remove and add tiles back. Your layout is saved automatically.
- Undo and redo while you customize. ⌘Z / Ctrl+Z steps back through moves, resizes, removed tiles or pages and applied presets; ⇧⌘Z / Ctrl+Shift+Z steps forward. A whole drag counts as one step.
- Turn off Snap together on a page to place tiles freely, with gaps where you want them. Tidy up packs the page again.
- Move several tiles at once. Shift/Ctrl-click or drag a box around tiles to select them, then drag one and the rest follow. The preview shows where every tile will land before you let go. Resizing one selected tile resizes them all.
- Change color, look or remove a whole selection in one step.
- Work in two windows. A change in one window shows up in the other right away, and an older window can no longer overwrite your newer layout.
- Pick a chart for a Chart tile, then Refresh it in place or Open it as a tab. A closed connection, a deleted or unshared chart, or a plan without charts each gets a clear message instead of a blank tile.
- Ask the AI assistant to do it. Through the MCP connection, an assistant can create pages, apply presets, and add dashboards, charts, tiles and favorites for you.
Keyboard Shortcuts
Shortcuts in the table and tree views used to stop working the moment you clicked anything outside the grid. The cell still looked selected, but every key did nothing, including the shortcut printed on the button you had just clicked. That's fixed, and SQL tables have caught up with MongoDB.
What stopped happening
- Shortcuts no longer go dead after a toolbar click. Click a toolbar button, the pager or an empty spot, and your shortcuts keep working on the table you're looking at. This covers MongoDB and SQL, in both table and tree view.
- One key press does one thing. Some shortcuts, including Refresh, used to run twice on a single press.
- Menus and tooltips show your own keys. If you changed a shortcut, the right-click menus and toolbar tooltips now show the key you chose, not the original one.
What you can do
- Edit SQL tables from the keyboard. The SQL row menu showed these shortcuts for a long time, but the keys did nothing. Now they work, with the same keys as MongoDB:
- Insert row: ⌘/Ctrl+I
- Edit row: ⌘/Ctrl+Shift+E
- Delete rows: Shift+Delete
- Batch update: ⌘/Ctrl+U
- Batch delete: ⌘/Ctrl+D
- Refresh: ⌘/Ctrl+R
- Expand / collapse columns: Alt+→ and Alt+←
- Run a SQL table's query with your own Run key. It follows the same setting as MongoDB's Run, so changing it once changes it in both.
In the Keyboard Shortcuts window
- One list for MongoDB and SQL. Most actions use the same key in both, so they now share a row. Only the exceptions are labelled, such as SQL only or MongoDB only.
- Moving around grids is listed too: arrows, Shift+arrows to extend a selection, Page Up/Down, Home/End, Tab, and Esc.
- See what has no shortcut. A No shortcut filter lists every command without a key, and those rows are highlighted so you can assign one.
- Know why a key isn't free, right where you're editing. While you set a key, the row tells you:
- if it's taken by something that can't be changed (and stops you)
- if it's used by another command, and whether that command keeps another shortcut or ends up with none
- if it means something else elsewhere in the app, and which one wins
- if it's already this command's key
Compare & Sync: Dry Run
Before, you had to trust a sync to do what you expected. Now you can see the plan first, for SQL and MongoDB alike.
What you can see
- "Dry run — nothing has been written." Every sync can be checked first: a progress bar with X of Y checked, then the counts of inserts, updates and deletes, the first 500 changes, and the rows that will be skipped and why (already in sync, changed since the compare, gone from the source).
- The exact statements. For SQL, the real
INSERT/UPDATE/DELETEstatements in your database's own syntax. For MongoDB, the equivalent shell commands, with types likeNumberDecimal,ISODateandObjectIdkept intact. - A warning when your database commits row by row, so you know a sync on it can't be rolled back halfway.
What you can do
- Click Sync plan and the dry run starts right away. What it shows is exactly what Start sync will do.
- Stop a dry run that's taking too long.
- Download the full plan as
.sqlor.jsto review, share or run yourself. Large plans work too; the file is ready for 30 minutes. - Sync progress no longer gets stuck at 0 when you have several VisuaLeaf tabs open in a browser. The dialog finishes on its own.
Charts
Making a chart used to start with an empty canvas and a list of field boxes. Now it starts with a chart.
What you can see
- A chart already drawn. A new chart from a query, pipeline or SQL picks fields and a chart type that fit your results: a line over dates, a bar or pie over a repeating category, a gauge for a single value, or a table otherwise. Saved charts are left as they were.
- Boxes named after the chart on screen. X axis / Y axis for bar, line and area; Slices / Size for pie; X axis / Cells / Y axis for heatmaps; Value for gauges.
- "Goes here" / "Will change." Hovering a field highlights the box it would fill, so nothing changes by surprise.
- Clearer labels: "Count of rows" instead of the column used to count, a footer that says what the chart shows, and gauges with negative values get a scale that reaches below zero.
What you can do
- Click a box to pick it, then click fields to try them in that box one after another. Done, Esc or a click elsewhere lets go.
- Clicking a field never replaces a box you already set. It fills an empty one, and never one the chart type doesn't use, so a chart no longer switches type on its own.
- Use the "+ …" in an empty box to pick from that box's own field list.
Fixed: switching a chart from Table back to Bar no longer leaves it blank.
Grids & Query Builder
What you can do
- Select several cells. Cmd/Ctrl+click adds a cell, Cmd/Ctrl+drag adds a block. Copy keeps each value in its place, and Cmd/Ctrl+C works after selecting rows by their row numbers.
- Drag a selection into the query builder and every selected cell becomes a condition.
- MongoDB: several values of one field become a single
$in, duplicates listed once, including sub-documents and arrays. Dropping several values on an existing condition turns it into an$in. - SQL: empty cells become
IS NULL(orIN … OR IS NULLalongside other values). Dates no longer shift back a day, timestamps keep their fractions of a second, and PostgreSQL arrays, JSON, XML and money columns filter correctly. - Set as Query (MongoDB table view): the filters in Columns & Filters used to hide rows on the loaded page only. Now they can run against the whole collection, added to your current query, with numbers, dates, ObjectIds and booleans kept as their real types.
What stopped happening
- Deleting rows with a column filter on deletes the rows you selected. In a filtered SQL table, rows picked by their row numbers and deleted from the menu or with Shift+Delete could remove different rows. It now deletes exactly what you selected.
- Dragging a value from the MongoDB table into the query builder no longer stutters, even after switching windows.
- A SQL grid no longer goes blank after a re-run or refresh while scrolled down. A one-row result now shows its row.
- Disabled conditions, sorts and projections stay put in the MongoDB query builder when you switch tabs.
Improvements
Oracle
- JSON in CLOB columns expands like JSON. A CLOB or VARCHAR2 column that Oracle declares as JSON (
IS JSON) now opens into its fields in the table and tree views, and you can edit a single field in place. Text columns that aren't declared as JSON stay text, even when their content looks like JSON. (SOZO-1717) - Following a foreign key works. Clicking the eye icon on a foreign key used to fail with "ORA-00907: missing right parenthesis". It now opens the related row, and the foreign-key check in the row and batch editors works on Oracle too. (SOZO-1718)
- Table Management opens a table in about 0.2 seconds instead of 4–9. Measured on every table in a 56-table schema, with identical results before and after.
- Foreign keys come from the right table. If another schema had a table with the same name, its foreign keys could show up in yours. They no longer do.
Database Menu
- Sections for MongoDB, SQL and Redis. The Database menu used to hold MongoDB tools only. It now also has:
- SQL: Tables Info, Query Profiling, System Monitor, Users & Roles, Server Info
- Redis: Key Browser, Server Info, Users & Security
These screens already existed, but you could only find them through the command palette or the sidebar. The native macOS menu has the same sections.
ER Diagrams
- Hide one relationship's name: click a line and choose Hide name. The line and its 1 / N markers stay, and hovering shows the name. A toolbar button hides or shows all names at once, and hidden names stay hidden in PNG and SVG exports.
- N-1 relationships behave: picking N-1 highlights the button, and switching back to 1-N works.
- Each database shows its own logo in the Blank Schema menu.
- Relationship lines stay drawn when the AI assistant arranges a diagram.
Connections
- One login attempt per Test. A wrong password on Test Connection used to try several times (around nine on Oracle, enough to lock an account) and could also break another open connection to the same database. Now it's one attempt.
- Pasted MySQL and PostgreSQL URLs with common TLS options connect.
useSSL=true,sslMode=PREFERREDand Heroku-stylesslfactory=…NonValidatingFactoryare translated into settings the connection understands, instead of making the connection fail. - Pasting a SQL connection URL keeps its TLS settings. Options like
sslmode=verify-fullused to be dropped silently. They now land in Advanced driver properties, and anything that can't be kept is listed instead of vanishing. - The real reason, not a puzzle. ClickHouse says why a connection failed (wrong password, refused, unknown host) and gives up on a firewalled host in under a minute instead of five. A wrong MySQL 8 password says "Access denied". Oracle, SQL Server, Azure SQL, HSQLDB, QuestDB, RisingWave and CockroachDB get the right hint for timeouts, unknown hosts and bad logins.
AI Assistant
- Much smaller requests. The assistant now sends a compact outline of your collection's fields instead of the full schema. On a 100-field collection that is about 2,500 characters instead of 62,000, on every message.
- Sample data is capped and scrubbed. When "Send sample data" is on, at most 5 documents go out, long values and arrays are trimmed, and fields whose names suggest a secret (password, token, API key, SSN…) are replaced with
[redacted]. - See exactly what was sent. Settings → AI → AI Request Log lists every request with the model, the full text sent and received, and the token count. It is kept in memory only and cleared when VisuaLeaf restarts.
- Charts the assistant creates show data straight away and carry a title. Saving one updates it instead of making a copy.
- Ask the assistant to build a dashboard. It can list your dashboards, create one laid out from your saved charts, add a chart to an existing one, open a dashboard so you see it drawn, and delete one (after you confirm). Deleting a dashboard keeps its charts.
- Ask it to put a chart on your home page, too.
Schema Editor
- Saving a new JSON schema twice no longer creates a copy on a VisuaLeaf server: later saves update the schema you are editing.
Data Transfer
- The task list no longer keeps the CPU busy. With a long task history, VisuaLeaf used over 160% CPU just showing the list. It now uses about 6% of one core.
- Import Data from File(s)… is on a schema's right-click menu.
Plans & Trial
- A clear heads-up before your Pro trial ends. Three days before, VisuaLeaf shows the days left and compares Community, Basic and Pro, so you can see which features you'd keep.
- Chart and dashboard tabs show a Pro page when your plan doesn't include them, and unlock themselves when it does.
- Trials no longer show as expired by mistake on a computer whose clock was once set ahead. The licence server's answer now wins while you're online.
Help
- Help → Video Tutorials opens visualeaf.com/videos.
Notes
- Free plan: saving is now limited to 5 schemas and 3 ER diagrams. Anything you already have stays, and editing, renaming or moving existing ones is never blocked. Only creating a new one over the limit asks you to upgrade.
- Home page: if you never customized it, your home page now opens in the new Classic layout. The previous layout is the Bento preset under Customize. Home pages you already customized are unchanged.
- If you changed any table shortcuts before this release, check them in Keyboard Shortcuts. SQL tables now have their own editing keys, and the window tells you about any overlap with your own choices.