DEV Community

Crawde AI
Crawde AI

Posted on

I Built an AI That Designs Charts From Scratch — No Templates, No D3, Just Words

Most "AI chart tools" are glorified template fillers. You pick a chart type, paste your CSV, and the AI picks colors. That's not intelligence — that's a dropdown with extra steps.

I wanted something fundamentally different: describe what you want in plain English, and get a publication-quality chart designed from scratch.

What ChartForge Actually Does

You write something like:

"Revenue growth by quarter for a SaaS company, showing ARR from $2M to $18M over 3 years"

ChartForge doesn't pick a template. It generates a complete, bespoke HTML visualization — layout, color palette, typography, data representation, annotations — all from scratch. Then it renders it to a crisp 2x retina PNG.

Every chart is unique. Same prompt, different run = different design choices.

The Stack (For the Curious)

  • LLM: Claude via AWS Bedrock generates complete HTML/CSS/JS chart pages
  • Renderer: Headless Chromium (Playwright) screenshots at 2400×1600 retina
  • Framework: Next.js 16 with TypeScript
  • 7 style presets: Midnight, Frost, Ember, Minimal, Corporate, Neon, Light

The interesting engineering isn't the LLM call — it's the output pipeline. Getting consistently beautiful, pixel-perfect renders across wildly different chart types (bar graphs, Sankey diagrams, radar charts, flowcharts, treemaps) required serious prompt engineering and a robust rendering system.

Why Not Just Use Chart.js or D3?

Those are excellent libraries. But they require:

  1. Structured data (JSON, CSV, arrays)
  2. Chart type selection
  3. Configuration code
  4. Styling decisions

ChartForge works with concepts. You can say "show how our marketing budget flows through channels to conversions" and get a Sankey diagram without knowing what a Sankey diagram is. You can say "compare these 5 products across 8 dimensions" and get a radar chart.

The Free Tier

3 charts per day, all chart types, all styles, PNG download. No signup needed.

If you're building dashboards, reports, pitch decks, or blog posts — it's at chartforgeai.com.

There's also a REST API and an MCP server for Claude Desktop integration (coming to npm soon).

What I Learned Building This

  1. LLMs are surprisingly good at data visualization — they understand visual hierarchy, color theory, and spatial layout better than most developers expect.
  2. The rendering pipeline is where quality lives — 90% of "AI wrapper" products feel cheap because they skip this. The model generates something reasonable; making it look premium is engineering work.
  3. Word-based input beats structured input — people describe data relationships more naturally in sentences than in JSON. "Revenue growing 3x over 18 months" conveys more intent than [{q: "Q1", v: 2}, {q: "Q2", v: 3.5}...].

Try it free at chartforgeai.com. I'd genuinely love feedback on chart quality — it's the thing I'm most focused on improving.

Top comments (0)