InsightBase
⌘K
Get Started

Core Concepts

Dashboards & Manifests

A dashboard is generated from a manifest — a short Markdown file describing what you want, not how to query for it.

Manifest syntax

A manifest has a title (the first # Heading) and a ## Panels section. Each ### Panel Name becomes one panel:

dashboard.md
# Sales Overview

## Panels

### Revenue This Month
- What: Total revenue for the current month grouped by product category
- Chart: bar
- Filter: created_at

### Active Users
- What: Count of distinct active users today
- Chart: stat

### Top Customers
- What: Top 10 customers by lifetime spend
- Chart: table
FieldRequiredDescription
WhatYesPlain-language description of what the panel should show. This is what gets turned into a query.
ChartNoOne of the chart types below. Defaults to stat for intents containing count/total/sum/average, bar otherwise.
FilterNoA column name this panel should respond to. Repeat the line to bind multiple filters to one panel.

Chart types

TypeBest for
statA single number — totals, counts, averages.
barComparing values across categories.
lineTrends over time.
pieProportions of a whole.
tableRow-level detail that doesn’t reduce to a single chart.
mapGeographic data with location fields.

How generation works

Once you submit a manifest (and an optional design screenshot), a live progress stream walks through:

  • Parsing — the manifest is parsed into panel specs; if a design image was attached, it’s analyzed to infer a grid layout.
  • Schema lookup — each panel’s intent is semantically matched against your datasource’s embedded schema to find the relevant tables and columns.
  • Generation — up to 5 panels are queried in parallel; each gets a generated SQL or MQL query from the relevant schema context.
  • Validation — every query is validated against the live datasource before it’s accepted. A failing query is retried with the error fed back to the model, up to 3 attempts.
  • Composing — filters are inferred from every Filter: line across all panels, deduplicated, and the final layout is assembled.
Careful:If a panel’s query still fails validation after 3 attempts, that single panel is marked as errored — the rest of the dashboard still generates and becomes usable.

Design image (optional)

Attach a screenshot or mockup of a desired layout alongside your manifest. InsightBase analyzes it to extract a 12-column grid layout — panel positions and sizes — and matches your manifest’s panels to that layout by name. If layout analysis fails for any reason, generation falls back to an automatic grid (4 columns wide, 3 panels per row) without blocking the rest of the pipeline.

Versions

Every change that affects what a dashboard shows or how it’s laid out — a manual query edit, a layout change — creates a new version. See Filters & Query Editor for rolling back to a previous version.