Tufte
Turn CSV into Tufte-style ASCII charts in any text environment

What it does
Tufte is a CDN and Node package that generates clean, Tufte-inspired ASCII charts from CSV data. It uses a Mermaid-style chart code block: you write a fenced block with a chart type, optional title, and CSV data, and it renders plain-text bar, line, sparkline, scatter, histogram, progress, and table charts. The output is pure text, so it works anywhere text renders — READMEs, terminals, diffs, LLM replies, and more. Sparklines can even be used inline via a sparkline: … span.
Who it is for
Tufte is for developers, technical writers, and anyone who needs to embed simple, readable charts in plain-text environments. It's especially useful for:
- Markdown documentation (READMEs, VitePress, Eleventy, Next.js, Astro, Docusaurus)
- Terminal output and CLI tools
- Obsidian notes (via the Tufte Chart plugin)
- LLM-generated responses where images aren't supported
Why it matters
Charts in plain text are universally accessible — no images, no JavaScript, no external dependencies. Tufte's approach means you can include data visualizations in version-controlled documents, terminal scripts, or AI conversations without breaking the text flow. The zero-dependency core and CDN-hosted ESM module make it trivial to integrate into any JavaScript environment, from browsers to Deno. The fail-safe fallback (a broken spec renders as a normal code block) ensures robustness.
Launch signal
Tufte is available as four npm packages: @tufte/chart-core (renderer), @tufte/chart-cli (CLI), @tufte/markdown-it-chart (markdown-it plugin), and @tufte/remark-chart (remark/unified plugin). It also has an Obsidian plugin. The core is zero-dependency ESM and can be imported directly from a CDN (e.g., https://tufte.ai/[email protected]). The project is open source on GitHub.
Brand and naming
The name "Tufte" references Edward Tufte, the data visualization pioneer known for clean, minimalist charts. This aligns with the product's focus on simple, text-based visualizations. The tagline "CDN and Node package to generate ASCII graphs inline" is descriptive but could be more memorable. The brand positions itself as a developer-friendly tool for text-first environments.
Founder
Arvin Dang
Related
Get more like this in our weekly newsletter.