Release notes

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

Analytics for hosted projects on Observable

  • Framework project details now show analytics for tracking page views and visitor engagement.

  • Visualize project and page engagement through new timeline visualization.

  • Available exclusively for projects deployed on Observable.

Observable Framework 1.6: Importing from node modules

  • Node imports: Framework now supports importing from node_modules! This lets you manage dependencies with npm or Yarn, import private packages, or import from a different package registry such as GitHub.

  • Updates to documentation, deploy improvements, and more...

See release notes on GitHub for more details.

Observable Framework 1.5: Live config, external links, and more

  • Live config: Changes to the project config (observablehq.config.js) are now applied immediately on reload or navigation during preview. Parsing and caching has been optimized, and the preview socket now reconnects automatically after server restarts.

  • External links: External links now include target="_blank" and rel="noopener noreferrer" attributes by default, enhancing privacy by preventing referer sharing to external sites. This can be overridden by setting the target or rel attributes explicitly.

  • FileAttachment enhancement: Introduced the FileAttachment.href property for easier file URL access as an alternative to the async FileAttachment.url() method.

See release notes on GitHub for more details.

Easier project sharing, access to project details

  • Framework projects displayed in your workspace now show who you’re sharing projects with, the date of last deployment, and any recent errors or notifications.

  • Sharing settings of projects can now be accessed from the ellipsis (...) menu.

  • Project details, including a list of deploys, can be viewed by clicking the gear icon.

Observable Framework 1.4: Query remotely-hosted data, reference local assets, and flexible deploy options

  • Query remotely-hosted data: Now you can query remotely-hosted data directly with SQL code blocks and DuckDBClient, making it easier to work with live data without embedding it into your site.

  • More local assets: You can now reference files and scripts in the head, header, and footer config options, simplifying the integration of external resources and scripts into your projects.

  • Flexible deployment options: The build and deploy processes are now separate, allowing for more control over your deployment workflow.

See release notes on GitHub for more details.

Observable Framework 1.3: Mosaic support, data loader enhancements, and more

  • Framework now has built-in support for Mosaic vgplot, enabling coordinated views over millions of data points for instant interactivity and cross-filtering capabilities without the need for complex setup.

  • We’ve added an interpreters config option for extending data loaders — if the language you want to use for data loaders is not supported by default, it’s now easier to extend support.

  • New config option cleanUrls preserves the .html extension in links if set to false. Also, URLs in Markdown now automatically turn into clickable links.

See release notes on GitHub for more details.

Observable Framework 1.2: SQL code blocks, powered by DuckDB

  • Write SQL queries in ```sql fenced code blocks over CSV, TSV, JSON, Apache Arrow, or Apache Parquet files.

  • Display query results in tables or visualize them with Observable Plot.

  • Interpolate dynamic values using inline expression ${…} for interactive queries.

See release notes on GitHub for more details.

Observable Framework 1.1: Windows and Node 18 support, self-hosted npm imports, and more

  • Windows support: Framework now supports Windows!

  • Self-hosted npm: imports: Framework now automatically downloads npm: imports during preview and build, improving performance and security by removing external dependencies, and allowing offline development. This applies to static imports, dynamic imports, and import resolutions (import.meta.resolve).

  • Node 18+ support: We now ship pre-built JavaScript rather than relying on a custom module loader to load TypeScript at runtime, allowing us to support older versions of Node.

  • Yarn Berry support: Framework now supports both Yarn Classic (1.x) and the most recent versions of Yarn (4.x).

  • CommonMark compatibility: Framework now conforms to the CommonMark spec, removing a quirk with blank lines and allowing Markdown within HTML blocks.

  • Content-hashed file names: Framework now generates content-hashed file names, ensuring cache-breaking on deploy and allowing cache-control: immutable for faster page loads.

  • Draft mode: The new draft: true front matter option allows you to exclude pages from build until they are ready for publication.

  • Improved search: Search now supports all Unicode writing systems, normalizes diacritics and HTML entities, and a new keywords option.

  • Apache ECharts, markdown-it plugins, bug fixes, and more…

See our release notes on GitHub for everything new in Framework 1.1!

Announcing Observable 2.0

  • Observable Framework is our new open-source static site generator for fast, beautiful data apps, dashboards, and reports. Framework combines the power of JavaScript on the front-end for interactive graphics with any language on the back-end for data preparation and analysis.

  • To learn more about why we made this change, please read our announcement.

  • Pricing tier changes

    • There is now no distinction between viewers and editors — they are all classified as users.

    • A new Starter Tier, replacing Free tier — Now includes working in private, unlimited notebooks, one Framework project, and collaboration with up to 5 users.

    • Updated Pro Tier — Includes up to 10 users with additional seats available for purchase. Host unlimited Framework projects and continue to work in notebooks. Existing Pro accounts with over 5 users remained on a legacy tier and must switch to the new Pro or Starter tiers in order to host projects.

    • Enterprise Tier — Current enterprise customers can continue to access all existing features, but will need to contact to enable Framework project hosting.

Discontinuing the User Following feature

  • Starting today, you can no longer follow other users on Observable. You can export the lists of whom you follow and who follows you in Settings as JSON or OPML, compatible with RSS readers, until February 19.

  • To enable the transfer of User Following functionality to external RSS readers, the ability to append ?sort=edited to RSS feeds has been enabled.

  • Observable is primarily utilized as an authoring tool by the majority of our users, with a preference for leveraging other platforms such as social networks and group chats for sharing notebooks within their public or private communities.

Recent activity feed & Slack app optimizations

  • The recent activity feed on the workspace homepage now defaults to showing only activity within your workspace. You can toggle to “All” to get the previous behavior.

  • The beta version of our Slack app (in beta) has been updated to no longer request access to view people in your workspace.