SVG · PNG · WebP — no browser, no react

Render charts,
anywhere

Vizx is a lightweight CLI and SDK that turns a Grammar of Graphics definition into pixels. Built so agents, bots, and CI can ship a chart without a browser in the loop.

terminal

$ npx vizx chart.json chart.png
GitHub

No install — also bunx vizx or pnpm dlx vizx

revenue.json revenue.png

Revenue Costs

Why Vizx

  • Grammar of Graphics
  • No browser
  • No Playwright
  • No Canvas
  • Works in CI
  • Works in Discord bots
  • Works with AI agents
  • Deterministic output

Examples

Line chart rendered by Vizx
Linenpx vizx examples/line.json
Bar chart rendered by Vizx
Barnpx vizx examples/bar.json
Area chart rendered by Vizx
Areanpx vizx examples/area.json
Pie chart rendered by Vizx
Pienpx vizx examples/pie.json
Multi-series chart rendered by Vizx
Multi-seriesnpx vizx examples/multi-series.json
Time-series chart rendered by Vizx
Time-seriesnpx vizx examples/time-series.json

CLI

terminal

$ npx vizx chart.json
$ npx vizx chart.json chart.png
$ cat chart.json | npx vizx > chart.svg
$ npx vizx '{"definition":{...}}'
$ npx vizx chart.json --width 1200 --height 630
$ npx vizx chart.json --format png
$ npx vizx chart.json --theme dark
$ npx vizx ./charts/*.json

TypeScript example

render.ts

import { render } from 'vizx';

const result = await render({
  definition,
  width: 1200,
  height: 630,
  format: 'png',
});