footprinter
Micro-builder and DSL for creating PCB footprints, built for AI.
What it does and how it connects
footprinter is tscircuit's DSL and micro-builder for creating PCB footprints. A footprint is named by a short string such as 0402, soic8_p1.27mm, or qfn24_w6_h6_p0.8mm_thermalpad, and the same string can be used as a footprint prop on a tscircuit component. Short strings also map to builder calls such as fp.cap().w(0.4).h(0.2) or fp.dip(4).w(7.62).
The README states the design goal directly: the strings are short, low-parameter mini-programs so an LLM can fit more footprint examples into context and spend fewer output tokens than verbose footprint elements. The same README notes footprinter is the DSL that text-to-footprint uses, and that a footprint the DSL cannot express needs a new representation in the DSL first.
The project ships as the @tscircuit/footprinter package, with an online gallery on its site. It produces Circuit JSON, so its output feeds the rest of the tscircuit toolchain.
Alternatives
Compare side by side- tscircuit
The full tscircuit design system in TypeScript and React, rather than the footprint-only micro-builder inside it.
- circuit-json-to-gerber
The Gerber writer that turns Circuit JSON into fabrication files, rather than the DSL that creates footprints.
- kicad-mcp (blwfish)
An MCP server that lets an agent drive a full KiCad workflow from description to fab files, rather than a footprint DSL for tscircuit.
- atopile
A code-first language and compiler for electronics, rather than a footprint-only DSL.
Recurring errors it addresses
Error Index entries this tool is built to reduce or work around.
- The SOT-723 footprint put pads in the right places with pins 1 and 3 swapped, against KiCad's SOT-723, the Toshiba datasheet and the generator's own SOT-23 family.Error Index
- fp().d2pak(5), .to252(5) and .to263(5) quietly fell back to three pads while the equivalent string aliases emitted six, dropping leads and giving the tab the wrong pad number, which the author says "can produce incorrect PCB connectivity".Error Index
- Two earlier PRs for a horizontal TO-220 footprint got the geometry wrong, one omitting the mounting hole and courtyard and one using a plated mounting hole, so the library shipped incorrect footprints until this correction.Error Index
Sources
Not verified
- Pricing: none stated on the repo.
- No independent user voice found: the repo has no public non-PR issues listed via the API.
- No GitHub releases exist, so latest release fields are null.
Last verified November 6, 2026. Listings are informational. The evidence score measures public, verifiable evidence and is not an endorsement or a compatibility claim.