standalone packages
Packages
Every tool here is one implementation reached five different ways. Which way you want depends on what you are doing — sending a colleague a single file, importing a function, calling it from another language, handing it to an agent — and none of those should require a different tool.
Each package is BSD-3-Clause, local-first, and independently versioned. They are not on PyPI yet, so install straight from GitHub.
Five ways in
The rule is that these are surfaces, never re-implementations. A route, a tool description and a command line all call the same function; when they disagree, one of them is a bug rather than a variant.
zip
A single self-contained kit
One folder that runs on a machine with nothing installed: the generator, the drawing engine in one file, the data, a page that opens the result, and a README. No network, no clone, no account. This is the form you can attach to an email.
library
Python functions
Import them and call them. Typed, documented, and free of any plotting or charting dependency — the SVG is written directly, so the only thing you install is the thing you asked for.
api
HTTP, via FastAPI
The same functions over HTTP, so any language that can make a request can use them. Comes with OpenAPI docs at /docs, which is also how the argument names stay honest: they are generated from the signatures, not written by hand.
mcp
Agent tools, via FastAPI MCP
The HTTP routes republished as Model Context Protocol tools, so an assistant calls them as first-class tools rather than by guessing at a shell command. Deliberately a wrapper over the existing routes: a hand-written MCP server would be a second copy of the surface, free to drift from it.
skills
Skills, for Claude and for OpenCode
The judgement that is not in the code: when to reach for a chart type, what makes a title honest, which check to run before shipping. MCP gives an agent the ability; a skill gives it the taste. Both runtimes read the same source material.
Where each surface actually exists
Five ways in is the target, and most of it is now built. Every package with a library has an HTTP API and an MCP surface over it — the same functions, never a second copy. What a dash still marks is the zip kits, which exist only for the figure gallery so far. The skills need no second version for OpenCode: both runtimes read the same SKILL.md.
| Package | Zip | Library | API | MCP | Claude skill | OpenCode skill |
|---|---|---|---|---|---|---|
| sprezzature-figures | 122 kits | yes | yes | yes | yes | yes |
| sprezzature-maps | not yet | yes | yes | yes | not yet | not yet |
| sprezzature-colors | not yet | yes | yes | yes | yes | yes |
| sprezzature-accessibility | not yet | yes | yes | yes | yes | yes |
| sprezzature-audio | not yet | yes | yes | yes | yes | yes |
| sprezzature-cli-gui | not yet | yes | yes | yes | yes | yes |
| sprezzature-ux-laws | not yet | yes | yes | yes | yes | yes |
| sprezzature-ui | not yet | not yet | not yet | not yet | yes | yes |
| sprezzature-vision | not yet | not yet | not yet | not yet | yes | yes |
| sprezzature-publish | not yet | not yet | not yet | not yet | yes | yes |
The last three rows are skills with no standalone package: they describe judgement rather than wrap a tool, so there is nothing to pip install.
Deterministic tools
sprezzature-figures
Figures
127 hand-authored SVG chart types, plus the Ralph Eyeball Loop, explainability, and causal DAGs.
pip install sprezzature-figures
Repository →
sprezzature-maps
Maps
Hand-authored SVG cartography split out of sprezzature-figures: an Equal Earth choropleth with an OKLCH ramp, and layered Lambert Conformal Conic situation maps, both with a real-elevation warm/cool relief.
pip install sprezzature-maps
Repository →
sprezzature-colors
Colors
WCAG contrast auditing with OKLCH-neighbour fixes, colour-vision-deficiency simulation, a curated palette, and Tailwind export.
pip install sprezzature-colors
Repository →
sprezzature-accessibility
Accessibility
A static HTML accessibility linter: source-decidable WCAG/WAI rules, no browser, no runtime DOM. A fast pre-commit gate.
pip install sprezzature-accessibility
Repository →
sprezzature-cli-gui
CLI → web GUI
Auto-generate a single-file HTML GUI from any Python CLI: it introspects argparse, Click, or Typer, with no build step.
pip install sprezzature-cli-gui
Repository →
sprezzature-ux-laws
Laws of UX
A static Laws-of-UX auditor for HTML: Hick, Miller, Fitts, Jakob, Tesler and more, decidable from source.
pip install sprezzature-ux-laws
Repository →
sprezzature-audio
Audio
Local captions (whisper.cpp), speaker diarization and who-is-who, narration and translation. ML backends are optional extras.
pip install sprezzature-audio
Repository →
Runtime & engine
best-engine-ai-helper
Engine picker & local runtime
Detect the machine, pick a model from a catalog, and validate a local LLM / VLM before the skills lean on it. Every skill's LLM/VLM call routes through its chat abstraction: a pluggable backend (Ollama, OpenAI-compatible, LangChain), the Ralph loop, and the writing pipeline.
pip install git+https://github.com/warith-harchaoui/best-engine-ai-helper
Repository →
Looking for the agent skills instead? The SKILL.md layer ships together as the skills bundle on the Getting started section.