npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@dztabel/chartkit

v0.1.31

Published

Agent-facing CLI for rendering polished report-grade charts from declarative specs.

Readme

ChartKit

ChartKit renders declarative chart specs into polished report-grade figures.

It is designed for LLMs and agents at the final visualization step: the agent prepares the data and chart intent, writes figure.json, then calls chart-kit to produce stable SVG/PDF/PNG/TIFF artifacts.

Install

# macOS Apple Silicon
npm install -g @dztabel/chartkit @dztabel/chartkit-darwin-arm64

# Linux x64
npm install -g @dztabel/chartkit @dztabel/chartkit-linux-x64

# Windows x64
npm install -g @dztabel/chartkit @dztabel/chartkit-win32-x64

The canonical command is chart-kit. chartkit is also provided as a compatibility alias.

Check the command:

chart-kit --version

Quick Start

Create figure.json:

{
  "version": "0.1",
  "type": "line",
  "profile": "report_a4.full_width",
  "contract": {
    "conclusion": "Product A keeps a stronger revenue trend than Product B.",
    "role": "trend",
    "archetype": "quantitative_grid",
    "panel_map": {
      "main": "Monthly revenue trend comparison"
    }
  },
  "data": {
    "x": ["Jan", "Feb", "Mar", "Apr", "May", "Jun"],
    "series": [
      {"name": "Product A", "role": "ours", "values": [120, 150, 180, 160, 200, 220]},
      {"name": "Product B", "role": "baseline", "values": [80, 90, 110, 100, 130, 140], "style": "dashed"}
    ]
  },
  "xAxis": {"label": "Month"},
  "yAxis": {"label": "Revenue"}
}

Validate and build:

chart-kit validate figure.json --theme business-cn
chart-kit build figure.json --out ./chart-output --theme business-cn --format all

Output files:

chart-output/chart.svg
chart-output/chart.pdf
chart-output/chart.png
chart-output/chart.tiff
chart-output/chart-quality.json
chart-output/chart-manifest.json
chart-output/build-result.json

Chart Types

Built-in single-chart types include:

  • line / time_series
  • bar
  • scatter
  • heatmap / network_matrix
  • distribution
  • interval
  • area
  • contribution
  • radar
  • image_plate
  • schematic

composite supports report/paper-style multi-panel figures. custom_python and custom_r are trusted local-script escape hatches when a built-in renderer would reduce quality.

Agent Usage

Use the bundled skill at skills/codex/chartkit-report-figure so agents follow the intended loop:

chart-kit validate figure.json --theme business-cn
chart-kit build figure.json --out outputs/figure-name --theme business-cn --format all

The agent must inspect chart-quality.json and iterate until quality.ok is true unless the user accepts a known tradeoff.

Showcase

The npm package includes a few-shot showcase library at examples/showcase. Each card has a rendered reference image, the matching declarative spec, source data, prompt, and notes. Agents can inspect it through chart-kit atlas and use these examples as the visual standard before writing a new figure.json.

| | | | |---|---|---| | 01 distribution box strip01 distribution box-stripdistribution · box + raw samples | 02 delta bar with points02 delta bar with pointsbar · benchmark deltas | 03 clustered scatter03 clustered scatterscatter · fitted trend + density | | 04 correlation heatmap04 correlation heatmapheatmap · lower triangle | 05 forest interval05 forest intervalinterval · effects + confidence | 06 area trajectory06 area trajectoryarea · cumulative contribution | | 07 benchmark score bars07 benchmark score barsbar · grouped benchmark evidence | 08 ridge distribution08 ridge distributiondistribution · ranked densities | 09 signed effect heatmap09 signed effect heatmapheatmap · signed effects | | 10 line validation trajectory10 line validation trajectoryline · validation curve | 11 mixed dual axis11 mixed dual-axismixed · bars + secondary line | 12 distribution histogram12 distribution histogramdistribution · histogram + quantiles | | 13 ranked contribution pareto13 ranked contribution paretocontribution · signed Pareto | 14 volcano scatter14 volcano scatterscatter · thresholded discovery | 15 bubble matrix15 bubble matrixnetwork_matrix · size + color + groups | | 16 stacked area composition16 stacked area compositionarea · composition over time | 17 contribution waterfall17 contribution waterfallcontribution · additive decomposition | 18 profile benchmark18 profile benchmarkradar · capability profile | | 19 time series events19 time series eventstime_series · events + regimes | 20 distribution raincloud20 distribution rainclouddistribution · half-density + box + points | 21 bar percent stack21 bar percent stackbar · normalized mix | | 22 contribution lollipop ranking22 contribution lollipop rankingcontribution · ranked effect sizes | 23 line slopegraph23 line slopegraphline · before/after movement | 24 time series error band24 time series error bandtime_series · uncertainty band |

Platform Support

Current public beta:

  • macOS Apple Silicon: @dztabel/chartkit-darwin-arm64
  • Linux x64 and Windows x64 packages are planned for follow-up beta releases.

More platform packages can be added without changing the main @dztabel/chartkit command.

Repository Boundary

This public repository contains npm metadata, the CLI shim, public docs, agent skill files, and the showcase few-shot examples used by chart-kit atlas.

It does not contain renderer source code, schemas, themes, fonts, visual regression assets, or platform binaries. Platform binaries are distributed through npm platform packages.

Feedback

Open an issue with:

  • chart-kit --version output
  • chart-quality.json and build-result.json
  • the input figure.json with sensitive data removed

License

CLI binaries are distributed through npm under a non-open-source license. Skill files and public docs may be used for installing and operating ChartKit.