DashSchema currently supports the following widget types.

Filter Widgets

  • search
  • date-select
  • date-range-select
  • select-single
  • select-multi

Filter widgets define param_key, which can be consumed by data widgets through filter_bindings.

Data Widgets

  • metric
  • table
  • bar-chart
  • heatmap
  • funnel
  • box-plot
  • treemap
  • line-chart
  • scatter-chart
  • pie-chart

Data widgets use:

  • data_ref to a shared entry under DashboardData.data_sources

Inline payload fields are not allowed in dashboard widget definitions.

Many data points/rows also support on_press behavior metadata for interaction semantics.

Axis range controls are available where numeric axes apply:

  • line-chart: x_min, x_max (numeric x-axis only), y_min, y_max
  • heatmap: x_min, x_max, y_min, y_max (numeric axes only)
  • scatter-chart: x_min, x_max, y_min, y_max
  • box-plot: y_min, y_max
  • bar-chart: y_min, y_max

Additional chart-level semantics:

  • line-chart: x_scale, y_scale, sort_x, null_policy, stacked, y2_series
  • heatmap: x_scale, y_scale
  • funnel: sort
  • box-plot: y_scale
  • scatter-chart: x_scale, y_scale, sort_x
  • bar-chart: y_scale

Layout Widgets

  • title
  • description
  • horizontal-ruler
  • vertical-ruler

Schema Packaging

Widget definitions are published as separate referenceable schema documents within the dashboard schema family so tools can validate and compose widget types independently.