Dashboards allow you to create custom visualizations or reports (in PNG or HTML format) that can be served via the API. They are useful for creating charts, graphs, or formatted text outputs based on your data. Unlike datasets, there is currently no support for serving dashboards to AI agents through MCP tools. Dashboards are defined in theDocumentation Index
Fetch the complete documentation index at: https://docs.pysquirrels.com/llms.txt
Use this file to discover all available pages before exploring further.
dashboards/ directory using Python.
File structure
The logic of the dashboard is written in a Python file. Optionally, the metadata (such as description and dependencies) can be specified in a YAML file with the same name.Python dashboards
A dashboard is defined by amain function in a Python file. This function is async, receives a DashboardArgs object, and returns a Dashboard object (specifically, a PngDashboard or HtmlDashboard).
Example: PNG Dashboard
This example creates a simple plot usingmatplotlib. PngDashboard accepts a matplotlib.figure.Figure, io.BytesIO, or bytes.
dashboards/my_plot.py
Example: HTML Dashboard
This example creates an HTML report.HtmlDashboard accepts a string or io.StringIO containing HTML.
dashboards/my_report.py
Accessing datasets
In your Python code, you access datasets usingsqrl.dataset(). As dashboards are run asynchronously, you must use the await keyword.
dataset method returns a Polars DataFrame. You can pass fixed_parameters to filter or configure the dataset for this specific dashboard.
YAML configuration
An optional YAML file with the same name provides additional configuration for the dashboard.dashboards/my_plot.yml
Configuration fields
A human-readable label for the dashboard.
A description of the dashboard for documentation purposes.
The format of the dashboard output. Options are
png or html.The access scope for the dashboard. One of:
public: Accessible without authentication.protected: Requires authentication to access.private: Only accessible by users with theadminaccess level.
public if auth_type is optional, and protected if it is required.List of parameter names used by this dashboard. If not specified, all parameters are available.
List of dataset dependencies. Defining these helps with documentation and lineage.
Related pages
- Federate models - Create datasets that can be used in dashboards
- DashboardArgs - API reference for dashboard arguments
- Squirrels project structure