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
npx vizx examples/line.jsonnpx vizx examples/bar.jsonnpx vizx examples/area.jsonnpx vizx examples/pie.jsonnpx vizx examples/multi-series.jsonnpx vizx examples/time-series.jsonCLI
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/*.jsonTypeScript example
render.ts
import { render } from 'vizx';
const result = await render({
definition,
width: 1200,
height: 630,
format: 'png',
});