Silvi

Changelog

What changed in the Silvi kit, newest first.

8 October 2026 - First release

Silvi starts here: an app of reports on your own data, which you build by asking Claude.

The kit is a small app with two modules in its sidebar. Reports lists every report in app/src/reports/. Wiki explains how the app works, and holds what you learn about your data. It runs on your own machine.

Reports

A report is a folder in app/src/reports/: a report.tsx and one .sql file per query. A mistake fails the type check before you open the page.

report.tsx
export default defineReport({
  meta: { title: "Sales", description: "Sales per month." },
  queries: { monthly: query<Month>(monthly, { grain: "month" }) },
  components: (k) => [
    <k.Line key="sales" series="monthly" x="month" xFormat="month" y={{ sales: "Sales" }} title="Sales per month" />,
  ],
})
  • Components for figures: Kpis, Line, StackedBars, CategoryBars, BarsWithLine, Treemap, Funnel, ShareBars, Waffle, Progress, DriverTree, Table, GroupedTable, and Custom for a visual of your own.
  • Layout with Section, Tabs and drills; inputs as select, toggle, slider and number.
  • An “(i)” dialog on every report and component for the explanations and the SQL.

See Report files and All components.

Connectors

Nine kinds of data, in three groups. The first one picked is the app’s default. The file connectors need no setup, and the three example reports (Events, Members, Website visitors) run on csv’s sample files as soon as the app starts.

Group Connectors
Data files Excel, CSV, JSON
Local database SQLite
Hosted database SQL Server, Postgres, MySQL, BigQuery, Redshift

See Connectors.

Themes

Pick the look of a tool your readers already know: Neutral, Power BI, Tableau or Google Looker, with six colours, six fonts and 48 logo marks. The whole pick is one preset code, set in Create or with silvi apply --preset f0. See Themes.

The wiki

The wiki ships with the kit: the idea, how it works, a three-lesson course, a page for every component, guides and a glossary, in plain Markdown. It is written for the Code tab of the Claude desktop app: every action is something to ask Claude. See Wiki.