Infographics that don't look AI-made.

An open-source skill that teaches AI agents to design infographics the way a studio would.

It skips the stock templates, the rounded card grids, the Tailwind blue, and the emoji icons. Every image below came straight out of the skill, brief to PNG, with nothing touched up by hand.

CI License: MIT

The streaming wars, dark-glass style

Why this exists

Ask an AI for an infographic and you usually get the same thing: rounded cards in a symmetric grid, Tailwind blue, an emoji where an icon should be, and a bar chart floating on a flat background. It works, and it is instantly recognizable as machine-made.

This skill writes down what a good studio actually does, as steps an agent can follow without needing taste of its own:

  • The canvas is a place, not a page. Every piece builds a scene (a drafting sheet, a dark theatre, a naturalist's folio, a miniature world) and the data lives inside that scene. Flat graphic minimalism counts as a failure here, even when it's tidy.
  • The drawn object carries the data: a cup filled to two thirds because 2 in 3 adults drink coffee, a rocket whose hatched section is exactly the 90% propellant fraction, a funnel of stage light drawn at 1px per 140 users.
  • Charts are computed rather than eyeballed. Bar ratios, donut arcs and areas come from arithmetic written into the file, and every palette goes through a color-blindness checker before it ships.
  • The agent reviews its own render. Every graphic gets screenshotted, read back, and checked against a hard anti-slop list (the no-text squint test, the template test, the flat-ground test) before you ever see it.

The gallery

Thirteen briefs, twelve design languages, six canvas formats, and every piece animated. Click any image for its brief, its HTML source, and the MP4 and GIF versions.


Orbital launch
blueprint · story

Tallest buildings
blueprint · a4

Signup funnel
dark-glass · square

The streaming wars
dark-glass · wide

The case for sleep
editorial · story

Anatomy of a margherita
hand-drawn · square

The honeybee economy
retro-print · a4

The coffee tree
naturalist-plate · a4

The spotlight is shrinking
dark-glass · story

Two tiny worlds of work
isometric-world · wide

The road the internet took
isometric-world · story

Visit Mars
park-poster · story

Inside a wind turbine
cutaway · a4

Your brief here
the skill made all of these;
test briefs in examples/briefs.md

It also moves

Every gallery piece is also a short animation, rendered from the same HTML file as its still. The skill asks up front whether the graphic should move, storyboards the build (the scene is already on stage, the data arrives in order, the hero lands last), and choreographs it in the design language's own motion character: the blueprint rocket is drafted line by line, the honeybee poster arrives as screen-print ink passes, the theatre runs its lighting cues, and the Mars vista pulls layer by layer off the screen. A bundled script scrubs the page's CSS animations frame by frame in headless Chromium and assembles the MP4 and GIF with ffmpeg, so every render is deterministic and the layout checks still hold on the finished frame.

The signup funnel, animated

The design languages

Each style file is a complete spec the agent can execute as written: exact hexes, font pairings, geometry, signature devices, do's and don'ts. Every chart palette passes a six-check color-blind-safety validation, including the dark ones.

Scene-native (the defaults)
blueprint cyanotype drafting sheet: dimension arrows, hatch fills, stamped title block
dark-glass luminous data on deep space: aurora fields, glass panels, disciplined glow
naturalist-plate 19th-century field-guide engraving: figure systems, watercolor tints, foxing
isometric-world miniature floating dioramas: data as architecture, exact 2:1 projection
retro-print mid-century poster: four inks, misregistration, film grain, arc text
editorial magazine feature: Fraunces at huge sizes, drop caps, charticles
hand-drawn marker sketchbook: wobble-filtered linework, washi tape, doodle arrows
park-poster WPA screen-print vista: layered flat planes, title band, a tiny figure for scale
cutaway DK-style cross-section: sliced machines, numbered callouts, detail lenses, tiny people
High slop-risk (explicit request only)
swiss · corporate-clean · neo-brutalist flat by construction; the skill only uses them when asked, and forces scene-craft into them

Install

Claude Code

/plugin marketplace add OrRon/EpicInfographics
/plugin install epic-infographics@epic-infographics

Updates: /plugin → Marketplaces → epic-infographics → Enable auto-update.

Codex

codex plugin marketplace add OrRon/EpicInfographics
codex plugin add epic-infographics@epic-infographics

Factory Droid

droid plugin marketplace add https://github.com/OrRon/EpicInfographics
droid plugin install epic-infographics@epic-infographics --scope user

Pi

pi install https://github.com/OrRon/EpicInfographics

Manual install (any agent that reads skill directories)

git clone https://github.com/OrRon/EpicInfographics.git
# user-level:
cp -r EpicInfographics/skills/epic-infographics ~/.claude/skills/
# or project-level:
cp -r EpicInfographics/skills/epic-infographics your-project/.claude/skills/

One-time render setup, run inside the installed skill directory. If you skip it, the agent runs it itself on the first render:

npm install && npx playwright install chromium

The renderer needs a real browser engine because the graphics are HTML/CSS; that's what buys real text wrapping, web fonts, backdrop blur and blend modes. Playwright drives headless Chromium, waits for fonts before screenshotting, and renders at 2x for retina-crisp PNGs. This is render-side only, the HTML sources open in any browser.

Quickstart

Then just talk to your agent:

make me an infographic about our Q3 numbers, dark and dramatic, 16:9
turn this data into a poster for the office printer  [paste a table]
a fun square social graphic about how sourdough works, hand-drawn style

The agent first pins down who the graphic is for, what it needs to do, and whether it should also move, gathers the data, then pitches you two or three story angles as a multiple-choice question. Once you pick one, it selects a visual metaphor that can carry real data, chooses a canvas and a design language, composes the scene, builds it, renders it, and reviews its own PNG against the checklist before handing it over. There are usually one or two self-correction loops you never see.

How it holds quality

  • Rule zero: where is the reader standing? If the answer is "looking at a well-designed page", the agent starts over.
  • Geometry is truthful: bars start at zero, area scales with value, and there are no eyeballed proportions or dual axes.
  • The skill does not invent data. Figures are supplied or researched, and illustrative values are labeled as such in the footer of every example.
  • Color is validated: every palette, light and dark, passes lightness, chroma, contrast and colorblind-separation checks before it ships.
  • Layout is verified by machine before any render. A preflight script loads the page headless, measures the real glyph geometry, and refuses to continue while text collides with other text, gets clipped, leaves the canvas, or falls below readable size.
  • The render-review-fix loop is mandatory: at least one pass, with a checklist that treats "could be a dashboard template" as a hard fail.
  • Motion is a layer on the approved still, never a substitute for one. The animation's final frame is the infographic itself, the same layout gates apply to it, and the agent reviews an eight-frame contact sheet of its own video before delivering.

Architecture

skills/epic-infographics/
  SKILL.md                      entry point: workflow + hard rules (kept short)
  references/
    composition.md              rule zero + six named composition patterns
    illustration-and-texture.md metaphor-first method, grain/halftone/misregistration
    data-vocabulary.md          ~25 data forms, chosen by the question the data answers
    charts.md                   inline-SVG recipes with the math written out
    motion.md                   animation as staging: build order, easing, recipes
    design-languages/           one complete spec per style (+ _template.md)
  templates/skeleton.html       canvas boilerplate
  scripts/check.mjs             preflight gate: collisions, clipping, sizes, hero
  scripts/render.mjs            HTML -> PNG · 6 presets · font-safe · retina
  scripts/animate.mjs           HTML -> MP4/GIF · scrubbed CSS keyframes · ffmpeg
examples/                       brief + HTML + PNG for every gallery image
.claude-plugin/ .codex-plugin/  plugin + marketplace manifests
.factory-plugin/ .agents/         (Claude Code · Codex · Factory Droid · Pi)
scripts/validate.mjs            CI gate: manifests in sync, examples complete
.github/workflows/ci.yml        validator + headless render smoke test per PR

The skill is built around progressive disclosure: for any one graphic the agent reads SKILL.md, one style file, and only the references the task needs.

Contributing

The most valuable thing you can add is a new design language. Copy _template.md, fill in every section, validate your chart palette for color-blind safety (don't eyeball it), and include one rendered example produced through the skill. PRs that add a style without a rendered example won't be merged, because the gallery is the test suite. The full checklist and the local validation commands are in CONTRIBUTING.md.

License

MIT. Do what you like with it.