Skip to main content

51 posts tagged with "new-feature"

View All Tags

๐Ÿ—‚๏ธ File history: trace and restore any file

File history gives every file - dashboards, models, datasets - its own version timeline. See every version of a file with who changed it, when, and why, then restore just that file to any past version without reverting anyone else's work.

Previously, rolling back a past version worked at the project level: restoring reverted the entire project, including teammates' unrelated changes since then. Now you can scope a rollback to a single file. You can also duplicate a past version into a new file to compare side by side, or jump to the full project history to see everything that changed together.

Learn more: File History & Restore

๐Ÿ“Š Custom chart as code

Custom charts now live in AML. With this update, you can define them as code, create them through a GUI, and preview against real data:

  • Define as code: Create a CustomChart block in a .chart.aml file. This lets you version-control your chart definitions in Git, validate their syntax, and protect them with dependency checks to prevent accidental deletion.
  • Easy creation flow: Create a new chart in seconds with three simple starting points: chat with AI to generate it, pick a pre-made template, or build it from scratch.
  • Preview while editing: As you write chart code, a preview panel renders the chart against real data. This lets you see and debug the output without leaving the editor.

โš ๏ธ Legacy (non-as-code) custom charts in Admin Settings remain accessible for viewing, editing, and deletion, but new charts must be defined in AML. To migrate, use the Copy as code option in Admin settings > Custom charts.

Learn more: Custom charts | AML syntax reference

๐ŸŽจ Theme-level color palette

Color palettes can now be assigned at the theme level. With this update, you can:

  • Apply color palette at theme level: Assign a palette to a theme so all charts on that dashboard use it automatically, eliminating the need for per-chart overrides. The palette also carries through to:
    • The theme thumbnails, so you can preview color palette before applying.
    • The explore modal, where charts inherit the dashboard theme's palette by default.
  • Override at chart level: Individual charts can still set their own palette when needed.

Learn more: AML theme reference

๐ŸŽฏ Chart suggestion: Stay focused on your data, not your chart setup

Chart Suggestions is now live in Explore. Select your fields and instantly get up to 3 chart recommendations tailored to your data โ€” apply any of them in one click, so you can stop thinking about chart setup and start thinking about your data.

This is part of a bigger push to make Explore faster for everyone. Auto-mapping already takes care of slot assignment. Chart Suggestions now tells you which chart to reach for. And we're not done yet โ€” next up: switch between chart types without losing your field configuration. Stay tuned.

Give it a spin and let us know if the suggestions are hitting the mark!

๐Ÿ—„๏ธ Reusable Library in Reporting Dashboard Editor

Demonstration of browsing and inserting a shared component from the Reusable Library in Reporting.

Browse and insert reusable components directly in the Reporting dashboard editor - no need to switch to Development.

Previously, inserting library components required switching to Development, which added friction and blocked Explorers entirely. Now you can insert existing components right where you work - components built by one teammate are instantly available to everyone.

Learn more: Reusable components

๐ŸŽจ Define color palettes as code

Color Palettes are now as-code, meaning you can define and manage your palettes directly within your AML workspace. Now you can:

  • Define as code: Create palettes in palette.aml once and reference them anywhere, with full version control.

  • Set a workspace-level default: Mark a palette in settings.aml so charts automatically use it by default, unless overridden at the theme or visualization level.

(*) Legacy palettes remain usable and deletable, but they can no longer be edited. To update a legacy palette, recreate it in AML.

Learn more: Color palettes | AML syntax reference

๐ŸŽจ KPI metric styling in dashboard theme

Previously, KPI styling had to be set widget by widget and had limited styling options.

๐ŸŒŸ What's newโ€‹

We're bringing KPI metric styling to the dashboard theme and supporting much richer styling options.

๐Ÿ”Œ Embed events: Control embedded dashboards with JavaScript

Embed Events lets you control embedded Holistics dashboards from your application using JavaScript. Send commands, listen for user interactions, and keep your app and dashboard in sync โ€” all through the browser's standard postMessage API.

Embed events communication diagram

Previously, embedded dashboards were one-directional โ€” your app could configure the embed at load time but couldn't respond to user interactions or send commands afterwards. With Embed Events you can:

  • Sync filters โ€” push filter values from your app into the dashboard, or listen for user filter changes and reflect them in your app
  • Navigate dashboards โ€” build a custom tab switcher or menu that controls the iframe without a full reload
  • React to errors โ€” detect embed_error events and auto-refresh an expired JWT to keep the session alive

Learn more: App & Embed Communication

โšก Auto-run on changes for embedded dashboards

Embedded dashboards can now re-run automatically whenever filters or controls change, without clicking the Apply button. Use the new dashboard_autorun_on_changes setting in your JWT payload to enable this behavior across all dashboards in your embed portal.

How to enableโ€‹

Add dashboard_autorun_on_changes: true to the settings object in your JWT payload:

const payload = {
object_name: 'your_portal',
object_type: 'EmbedPortal',
settings: {
dashboard_autorun_on_changes: true,
},
exp: Math.floor(Date.now() / 1000) + 3600,
};

This overrides the dashboard's internal auto-run on changes setting. The default is false โ€” dashboards continue to require clicking Apply unless you opt in.

Note: Auto-run fires a query on every filter change. For dashboards with many charts or heavy queries, leaving this off avoids unexpected query costs.

Learn more: Embed Portal Parameters Reference