Release notes

Subscribe to release notes via RSS, or follow @observablehq on X to keep up to date with everything we ship.

Observable Canvases GA release

We have added significant new functionality:

  • You can now create an iframe that embeds any part of a canvas by right-clicking and selecting “Generate embed code”. If a node’s data is more than 24 hours old, embeds pull fresh data. Since embeds use an API key to access your data source, they should only be embedded for a trusted internal audience.

  • Presentation views now support reactive interactive filtering and fresher data. If a node’s data is more than 24 hours old, presentation views will now also pull fresh data. They also now show any edges that exist between displayed nodes.

  • There are several new chart types: stacked area, streamgraph, bump chart, circle packing, isotype, and arc map (inspired in part by this recent map in the New York Times).

  • You can now see and restore past versions of the canvas from the main menu > “File” > “Show version history”. New versions are automatically saved every minute while you edit, or you can add a manual version with a note.

Some things now work a bit differently:

  • Clicking a node once now merely selects it, so you can resize, drag, duplicate, etc. To interact with or edit the contents of a node, you now have to double-click it, which matches the behavior of other editable shapes. With a node selected, you can also press Enter to edit it, and Esc to exit edit mode.

  • Nodes are now connected using a new shape called a “connector” (instead of arrows), which connect to ports on either side of the node. Connectors disallow connections that don’t make sense, like duplicate inputs or circular references. Referencing a table in a SQL node produces a read-only connector pointing to that table.

  • The menus and panels on the left have been combined into a single full-height sidebar. Collapse it to a small floating panel with a “Toggle sidebar” button.

  • You can now add new nodes downstream from a vertical toolbar floating to the right of the node.

  • The chart sidebar settings have been redesigned into three tabs: the “Type” tab (browse and select chart types) and “Data” tab (configure encodings), and the pre-existing “Options” tab.

  • Stacked bars and columns are now separate chart types from unstacked bars and columns.

We’ve improved the overall robustness and “quality of life”:

  • The data panel now supports multiple schemas, and will list all schemas it has access to in the data source.

  • When a node is disconnected from its input, it now retains its data and shows a “Missing connection” warning. Downstream nodes also retain data, and show a “Input data error” warning.

  • Refreshing the data in one node now also refreshes the data in downstream nodes.

  • Table footers now show if any filters are applied.

  • You can now click “Join” in the column menu to initiate a join on the given column.

  • Pressing the tab key in the SQL and JavaScript node editors now indents the code.

  • The AI can now make any chart type available in the chart node.

  • Users with a “viewer” role in their workspace now see canvases in a “detached mode” in which they can change filters and brushes, but their changes will not be saved.

  • Many other error states have been improved, many other loading states are now cleaner, and many other bugs have been fixed.

And some functionality has been replaced or removed:

  • The Where node has been removed. Existing Where nodes have been migrated to SQL nodes.

  • The Select node has been removed in favor of a new “Columns” tab in the node settings sidebar. Existing Select nodes have been migrated to a Table node; you will have to re-select the intended columns.

  • The main menu no longer has options to change language or color theme in the main menu, which did not work.

  • Right-clicking nodes no longer has the “Flatten” option, which also did not work.

Previewing Observable Notebooks 2.0

We’re excited to share a preview of the next generation of Observable Notebooks! Today’s technology preview release includes:

  • Observable Notebook Kit - An open file format for notebooks, and accompanying open-source tooling for generating static sites

  • Observable Desktop - A macOS desktop application for editing notebooks as local files, and with a radical new approach to AI

You can learn more and download Observable Desktop by visiting the Notebooks 2.0 website.

Observable Canvases, July 15 release

  • We’ve officially launched AI for canvases. Read the announcement.

  • You can now make canvases with Databricks data sources.

  • Added a beeswarm chart type.

  • Adding a child to a node in a frame now creates the child in the frame.

  • Sankey diagrams can now be sorted alphabetically or by size.

  • The From nodes’ table selector now matches the left data panel and includes search.

  • AI now stops its work if you switch pages and stops more reliably.

  • The old deprecated Join node has been removed. If you have canvases still using the old Join node, you will have to reconnect their input edges to fix them.

Observable Canvases, July 9 release

  • You can now make canvases with Postgres data sources.

  • Expanded the choropleth to support either a U.S. or world base map.

  • Added a dot strip chart type (a scatterplot with ordinal y and quantitative x).

  • Sankey diagrams now default to sizing by count.

  • Sankey diagrams now have options for filtering nulls and merging source and target.

  • AI now understands more about bar charts, scatterplots, and treemaps.

  • AI now remembers its last prompt and output even if you’ve panned away.

  • AI now identifies nodes primarily by the same names you see and edit.

  • Improved handling of BigInt and Time units in DuckDB sources.

  • Fixed issue where you could add a broken DuckDB table before it had loaded.

  • Fixed histograms’ multiline brush labels in Safari.

Observable Canvases, July 1 release

  • The join node can now join to any table on the canvas (instead of just to database tables).

  • Line charts support new options for binning intervals, axis labels, and axis ticks.

  • Added a Sankey diagram chart type.

  • AI is now more concise.

  • AI now highlights questions for you to respond to.

  • The JavaScript node’s CSS now matches notebooks’ CSS.

  • Uploading a file to a DuckDB canvas no longer immediately adds the table to the canvas. (Click “+” beside a table in the data panel to add it.)

  • Fixed AI to see nodes inside of frames.

  • Fixed SQL parsing to support trailing comments.

  • Fixed autocomplete clipping in JavaScript and SQL nodes.

  • Fixed SQL and Derive nodes to re-run children after filtering.

Observable Canvases, June 23 release

  • Nodes are now named by default. (Double-click the name in the header to edit.)

  • You can now add a SQL node querying the selected node from the “+” menu.

  • AI now puts its canvas work in a frame labeled with your prompt.

  • AI now sees more detail to match what you see in column summaries.

  • Updated fonts (Draw, Sans, Serif, and Mono) to better match notebooks.

  • Fixed bug where summary charts of time columns would fail to load.

  • Fixed Snowflake “Edit database” settings to remember password until reset.

Observable Canvases, June 17 release

  • The default font on canvases is now sans-serif instead of handwritten script.

  • You can now toggle column summary charts in tables’ “⋮” menu (upper right).

  • Duplicating nodes now maintains upstream inputs.

  • Line charts’ y-axes now include 0 if the data’s minimum is a small fraction of the maximum.

  • AI now takes better advantage of available chart options.

  • AI now shows an error when it cannot connect.

  • Categorical column summaries now alphabetize values with equal counts.

  • Nulls in column summaries now have a hatched background, and “Others” are cross-hatched.

  • Long column names in the data pane now truncate instead of wrapping.

  • Fixed dates from Snowflake sources to display in UTC instead of local time.

  • Fixed tables losing scroll position when blurred.

  • Fixed syntax highlighting in SQL nodes.

  • Fixed intraday brushing of line charts.

Observable Canvases, June 9 release

  • Added new line charts with smart collision-avoidant labeling.

  • Temporal histograms now have configurable bin interval and rolling averages.

  • Bar charts now have configurable sorting.

  • Density plots now have configurable scales.

  • The AI now understands top column values and more about histograms.

  • The AI now understands which nodes depend on which.

  • The AI’s filtering is more reliable and adds new nodes instead of editing existing ones.

  • The AI can now use the UI to group, limit, and sort rows, and to derive new columns.

  • The AI no longer writes SQL and JavaScript nodes by default. (Toggle them in Menu → “Developer tools” → “Show AI options”.)

  • You can now press Shift-Return to run a code node.

  • You can now set arrows to the “elbow” style. (tldraw v3.13)

  • Fixed numbers and bullet points disappearing in lists. (tldraw v3.13)

  • Fixed scrolling nodes’ side panels, including SQL and JavaScript editors.

  • Fixed some transient errors while loading charts.

  • Fixed some bugs in filtering histograms.

Observable Canvases, June 2 release

  • The AI can now add columns based on existing tables.

  • Charts more smoothly update to reflect new data.

  • Cleaned up some unused, outdated, or broken menu items.

  • Fixed creating a chart from a temporal column summary.

  • Fixed scrolling in code nodes.

  • Fixed adding database tables with zero rows to the canvas.

Observable Canvases, May 27 release

  • Temporal histograms can now be weighted by a “value” channel.

  • Stacked bar charts now collapse less frequent categories into an “Other” category.

  • Histogram axis ticks now avoid colliding with each other.

  • Charts’ PNG downloads now include the title and caption.

  • AI can now use the new scatterplots.

  • You can now press the up and down arrow keys in the AI prompt to navigate its history.

  • Adding a new node to the canvas now places it in an emptier initial spot.

  • Fixed zooming the canvas while pointing at a selected node.

  • Fixed errors in the initial states of nodes.

  • Fixed bug where “New canvas” modal listed workspaces without access to the beta.

Observable Canvases, May 19 release

  • The chart node has been redesigned, and its options have expanded.

  • The AI can now make more kinds of charts and filter existing nodes.

  • AI options are now hidden behind Menu → “Developer tools” → “Show AI options”.

  • The data panel now shows more information about your data source’s schema.

  • The JavaScript node can now render the output of expressions, not just statements.

  • Creating a new node now selects the node.

  • Nodes better detect stalled data loading and show clearer errors.

  • Fixed uploading images to the canvas.

  • Fixed bug where dropdown menus wouldn’t close.

  • Fixed the left outliers bin for ordinal histograms.

  • Fixed downloading charts as PNG.