tufte icon

tufte

tufte turns CSV-style data into plain-text ASCII charts for Markdown, terminals, and text-first workflows. Supports fenced `chart` blocks and inline sparklines.

tufte

Overview

tufte is a developer-focused ASCII chart tool for Markdown and terminal workflows. It turns CSV-style data into Tufte-style text charts using a Mermaid-style `chart` code block, plus inline `sparkline` spans for compact trend display.

The site positions the output as plain text that can travel with the content itself, so charts can render in READMEs, terminal output, diffs, and LLM context. The homepage also shows a live demo, a short syntax spec, and a set of packages for rendering charts in different publishing pipelines.

Supported chart forms shown on the homepage include bars, columns, sparklines, lines, tables, histograms, progress bars, and scatter plots. An Obsidian plugin is also listed for note-taking workflows, and a zero-dependency core package can be imported directly in the browser or Deno.

Features

Minimal block syntax

Create charts from a fenced `chart` block that can include a chart type, an optional title, and CSV-style data. The homepage says the format is deliberately small and easy to embed in Markdown.

Multiple chart types

Support multiple chart forms, including horizontal and vertical bars, sparklines, line charts, tables, histograms, progress bars, and scatter plots. The site describes these as eight chart types in one grammar.

Live editing preview

See the chart update live as you edit the data in the browser demo, which makes it easier to revise labels and values before copying output elsewhere.

Plain-text output

Render output as plain text so the same chart can appear in READMEs, terminals, diffs, and an LLM response without relying on image rendering.

Inline sparklines

Use the chart as an inline `sparkline: …` span when you only need a compact trend inside a sentence. The homepage shows this working as embedded text, not just in standalone blocks.

Multiple deployment options

Choose from several implementation paths: a core renderer, a CLI for pre-rendering Markdown, `markdown-it` and `remark` plugins, and a zero-dependency ESM import for browser or Deno use.

Use Cases

  • Project documentation

    Write charts directly in a README or docs page so the visual stays readable in plain text and does not depend on image rendering support.

  • Static-site publishing

    Pre-render `chart` blocks during a Markdown build for tools such as VitePress, Eleventy, MDX, Next.js, Astro, or Docusaurus.

  • Terminal and diff reporting

    Show quick visual summaries in terminal output, diffs, or command-line reports where images are awkward or unavailable.

  • Personal notes in Obsidian

    Keep charts inside Obsidian notes using the community plugin, which lets note content and chart syntax stay in the same text file.

  • Inline status updates

    Embed compact sparklines inline in prose when a full chart would interrupt the flow of a sentence.

Pros and Cons

Pros

  • Produces plain-text charts that fit naturally into Markdown, terminal, and diff-based workflows.
  • Offers several delivery modes, including CLI, Markdown plugins, and a direct ESM import.
  • Supports multiple chart types in one compact grammar.
  • Includes inline sparklines for sentence-level trend display.
  • Shows a fail-safe fallback to a normal code block when a spec is broken, which reduces the risk of breaking a page.

Cons

  • The public pricing page linked from the site returns a 404, so pricing and plan details are not available from the provided sources.
  • The feature set is clear from the homepage, but deeper implementation details are limited without the full spec and package documentation.

FAQ

Where does tufte's output work?

It renders fenced `chart` blocks into plain-text charts, so the output can be used in Markdown files, terminal output, diffs, and LLM context.

How do you write a chart with tufte?

The homepage shows a Mermaid-style `chart` fence with an optional type and title, followed by CSV-style data lines. It also supports inline `sparkline: …` spans for short trend displays.

What integrations are available?

The site shows package-specific plugins for `markdown-it` and `remark`, plus a zero-dependency core package that can be imported directly in the browser or Deno.

Can tufte be used in note-taking apps?

An Obsidian plugin is listed for rendering `chart` blocks inside notes, with the same format and fallback behavior as the other integrations.

Is pricing available on the site?

The pricing page linked from the site returns a 404, so the public sources here do not confirm any plan details.

Quick Facts

Category
Developer Tool
Primary output
ASCII / plain-text charts
Core formats
Fenced `chart` blocks and inline `sparkline` spans
Integrations
CLI, `markdown-it`, `remark`, Obsidian, browser/Deno ESM
Source domain
tufte.ai
Pricing
Not confirmed; pricing URL returns 404