claudeers.

🔓 unclaimed — this page was auto-generated from GitHub. Are you the creator?

Claim this page →
// Claude Skills

opentikz

TikZ for paper diagrams, without hand-writing TikZ — copyable icons, editable templates, and a Claude Code skill

// Claude Skills[ cli ][ api ][ web ][ claude ]#claude#agents#ai#latex#papers#skill-md#skills#tikzNOASSERTION$open-sourceupdated 8 days ago
Actively maintained
100/100
last commit 5 days ago
last release 10 days ago
releases 1
open issues 0
// install
git clone https://github.com/opentikz/opentikz

OpenTikZ

Describe your figure. Get it, paper-ready.

More than an AI-agent skill for LaTeX TikZ figures.

Website · Browse · Templates · Icons · Examples · Quick start · Contributing


OpenTikZ is the "Flaticon for academic TikZ" — conceptual/overview figures (system block diagrams, neural-network architectures, pipelines, flowcharts) for your papers, made fast. Four ways to use it:

  • Use icons — grab a single icon, no AI needed: copy its .tex (or download SVG/PNG) and \input it.
  • Edit a template — tell the agent the change; it edits the template and verifies it compiles.
  • PNG → TikZ — hand the agent a figure image; get editable TikZ back.
  • Describe → TikZ — describe a figure in words; the agent drafts it from the library.

Quick start

Use it with your AI agent (recommended). Install the Claude Code plugin — run these as two separate Claude Code messages:

/plugin marketplace add https://github.com/opentikz/opentikz
/plugin install opentikz@opentikz

Then describe the figure or edit you want

  • "draw an encoder–decoder with a cross-attention block," or,
  • pointing at a template, "add a hidden layer / recolor this blue / fit it to a CVPR column."
    The skill finds the figure, copies it into your project, edits it via each template's edit_contract, and compiles it before handing it back. Invoke it as /opentikz:using-opentikz.

Other agents (Codex, Cursor, Gemini CLI…). git clone this repo and tell the agent to use skills/using-opentikz/SKILL.md, or just point a GitHub-reading agent at the repo URL.

Prefer no AI? Browse the gallery, copy a figure's .tex, and paste it in — every file is \documentclass{standalone} and compiles as-is.

Why TikZ, and why OpenTikZ

Why TikZ at all? A TikZ figure is source code, not an image:

  • Vector quality — crisp at any zoom, sharp in print; no pixelated screenshots.
  • Native to your paper — same fonts, math ($\mathbf{W}x$), and \ref/\cite as the document, so the figure looks part of the paper.
  • Diffable — version it in git, tweak one number, recompile.

Why not just ask ChatGPT for TikZ directly? You can — but raw LLM TikZ tends to fight you. OpenTikZ anchors the edit to a real, parametric template:

What you care aboutRaw LLM TikZOpenTikZ + skill
Compiles first tryOften notYes, standalone
Packages / macrosSometimes inventedReal, declared in requires
ColorsRandom hexShared palette
Re-editing laterRe-describe everythingStable node names
AI guidanceNoneEach template ships an edit_contract

Because every template is parametric, palette-correct, and carries an edit_contract, an agent edits it accurately and fast instead of hand-writing TikZ that may not compile.

A concrete edit

Starting from templates/encoder-decoder/, tell Claude Code:

"add a cross-attention block and make it blue"

Guided by the template's edit_contract — using the shared palette and the template's stable node names — it adds:

% cross-attention block (decoder attends to encoder)
\node[draw=otblue!80!black, fill=otblue!18, rounded corners=2pt,
  minimum width=\trapW cm, minimum height=0.7cm]
  (xattn) at (\xdC,\bh+0.9) {\sffamily\small Cross-Attn};
\draw[flow, draw=otblue] (enc) to[bend left=20] (xattn);
\draw[flow, draw=otblue] (xattn) -- (dec);

…and it compiles standalone, first try.

A taste of the library below — every preview is rendered from the committed .tex source (no mockups). The full, searchable catalog with copy-to-clipboard lives on the website; or browse examples/, templates/, and icons/ directly.

Examples — paper-grade figures combining icons + templates

LoRA (low-rank adaptation)
LoRA · low-rank adaptation
FlashAttention
FlashAttention · tiled attention
Generative adversarial network
GAN · generator / discriminator

Templates — editable, AI-modifiable (each ships an edit_contract)

Feed-forward neural network
Feed-forward neural network
Encoder-decoder (bottleneck)
Encoder-decoder · bottleneck
Training pipeline
Training pipeline · loss/optimizer loop

…and more — system block diagrams, flowcharts, ResNet blocks, distributed training, inference serving. See templates/.

Icons — atomic, single-concept, independently copyable

Server
Server
GPU
GPU
Cloud
Cloud
Neuron
Neuron
Attention block
Attention

…and many more across systems/ and ml/. Previews are transparent SVGs and read best on a light background; the live website renders them on paper-white tiles.

How it's organized

Three layers, plus the skill that ties them together:

  • icons/ — atomic, single-concept TikZ elements; each compiles standalone and is independently copyable.
  • templates/ — complete, editable conceptual figures (the core value); each carries an edit_contract in its meta.json describing how to edit it safely.
  • examples/ — paper-grade figures combining icons + templates.
  • skills/using-opentikz/ — the one repo-wide skill that takes an AI agent from a request to a finished figure (discover → edit → verify), backed by the per-template edit_contracts and the reference/ palette/layout material.
icons/<domain>/<name>/      <name>.tex + <name>.meta.json + <name>.svg
templates/<name>/           template.tex + template.meta.json (+ edit_contract) + preview.svg
examples/<name>/            paper-grade figures combining icons + templates
skills/using-opentikz/      the one repo-wide skill (SKILL.md)
reference/                  color-palettes/, annotations/, layout/
tools/                      build_catalog.py, render_preview.py, build_site.py, validate.py

Community

  • 💬 Discussions — ask how to use a template or the skill (Q&A), request a new icon/template (Ideas), or show a figure you built (Show & tell).
  • 🐛 Issues — report a bug or a figure that won't compile, or file a concrete task.

Rule of thumb: open-ended → Discussions, closeable → Issues.

Contributing & local build

Want to add a figure or fix one? See CONTRIBUTING.md for the format rules and docs/DESIGN_GUIDE.md for the design guide. The toolchain (all stdlib + an optional LaTeX backend):

python3 -m pip install -r requirements.txt   # installs jsonschema
python3 tools/validate.py                     # validate metadata + compile .tex
python3 tools/build_catalog.py                # regenerate catalog.json (never hand-edit it)
python3 tools/render_preview.py <item>        # render a trimmed .svg preview
python3 tools/build_site.py                   # build the static site/ locally

validate.py and render_preview.py need a LaTeX toolchain (latexmk) plus an SVG backend (dvisvgm, or pdf2svg + pdfcrop); without LaTeX, validate.py still checks metadata and skips the compile. The site (opentikz.org) deploys automatically from catalog.json + committed previews on every push to main via .github/workflows/pages.yml.

Citing OpenTikZ

Content is CC0, so a citation is never required — but if OpenTikZ saved you time, it is appreciated. Use the "Cite this repository" button on GitHub (powered by CITATION.cff), or the BibTeX below:

@misc{opentikz,
  title        = {{OpenTikZ}: a TikZ resource library for academic conceptual diagrams},
  author       = {{OpenTikZ contributors}},
  year         = {2026},
  howpublished = {\url{https://opentikz.org}},
  note         = {Content licensed CC0 1.0}
}

Licensing

  • Code (scripts, build tooling): MIT — see LICENSE-CODE.
  • Graphic content (.tex figures and previews): CC0 1.0 — see LICENSE-CONTENT.

By contributing graphic content you agree to release it under CC0 1.0.


⭐ Found OpenTikZ useful?

Star us on GitHub — it helps more researchers discover the library and find these figures faster.

// compatibility

Platformscli, api, web
Operating systems
AI compatibilityclaude
LicenseNOASSERTION
Pricingopen-source
LanguagePython

// faq

What is opentikz?

TikZ for paper diagrams, without hand-writing TikZ — copyable icons, editable templates, and a Claude Code skill. It is open-source on GitHub.

Is opentikz free to use?

opentikz is open-source under the NOASSERTION license, so it is free to use.

What category does opentikz belong to?

opentikz is listed under skills in the Claudeers registry of Claude-compatible tools.

0 views
85 stars
unclaimed
updated 8 days ago

// embed badge

opentikz on Claudeers
[![Claudeers](https://claudeers.com/api/badge/opentikz.svg)](https://claudeers.com/opentikz)

// retro hit counter

opentikz hit counter
[![Hits](https://claudeers.com/api/counter/opentikz.svg)](https://claudeers.com/opentikz)

// reviews

// guestbook

0/500

// related in Claude Skills

🔓

An agentic skills framework & software development methodology that works.

// skillsobra/Shell249,840MIT[ claude ]
🔓

Public repository for Agent Skills

// skillsanthropics/Python159,495[ claude ]
🔓

💫 Toolkit to help you get started with Spec-Driven Development

// skillsgithub/Python117,790MIT[ claude ]
🔓

AI coding assistant skill (Claude Code, Codex, OpenCode, Cursor, Gemini CLI, and more). Turn any folder of code, SQL schemas, R scripts, shell scripts, docs,…

// skillsGraphify-Labs/Python77,228MIT[ claude ]
→ see how opentikz connects across the ecosystem