Vibeleaderboard
Index / tool
Visit tscircuit.github.io
Category
Developer Tools
Rank
No. 1486Tools index

Previous survey · No. 1492 ·

Pricing
Open Source
Type
TOOL
Builder
tscircuit
GitHub
28 stars
Date

About

Micro-builder and DSL for creating PCB footprints, built for AI.

What it does

Footprinter turns compact package descriptions into structured circuit JSON for PCB layout. Users can supply a short text definition or assemble the same parameters through a typed builder. It covers common component packages, configurable dimensions, pin orientation, polarity marks, rounded pads, thermal pads, and omitted grid positions.

Why it's ranked here

Its strongest case is efficient, repeatable generation of standardized footprints. The compact notation saves context when models produce definitions, while the builder gives application code a typed alternative. Broad package coverage and geometry-focused tests make it credible. Tolerance for missing dimensions is useful during exploration, but weakens confidence until every critical measurement is explicit.

What's good

The same footprint can be expressed as concise text or assembled programmatically. Output is structured circuit JSON, so consumers receive pad geometry and metadata rather than a rendered picture alone. Global modifiers handle orientation, silkscreen removal, reference-designator removal, origin changes, and pad rounding. Tests check exact coordinates, pad counts, shapes, numbering, invalid inputs, and SVG snapshots.

Tradeoffs

Underspecified definitions receive reasonable defaults, and those defaults may change after an upgrade. The project cannot currently report whether a definition is underspecified. Compact definitions also favor standardized packages over highly custom geometry. The browser gallery previews SVG output, but the package declares no command-line entry and exposes no standalone service interface.

How to use it well

Use it inside TypeScript circuit tooling when many standard package variants must be generated from concise, inspectable descriptions. It also suits model output, provided a later strict check or linter rejects missing dimensions. Specify pitch, pad size, body dimensions, orientation, and omitted positions explicitly. Use full custom geometry authoring when the package cannot be represented by the existing vocabulary.

Technical notes+

package.json declares an ESM package whose build uses tsup on src/index.ts and emits JavaScript, declarations, and source maps into dist. src/index.ts re-exports src/footprinter.ts, where the Footprinter and FootprinterParamsBuilder types expose string parsing, parameter inspection, and circuit JSON generation. Package generators are gathered through src/fn/index.ts. gallery/index.tsx converts generated circuit JSON to SVG in a React browser interface, while gallery/generate-grid-content.ts builds gallery data from SVG snapshots. tests/bga.test.ts demonstrates Bun tests combining coordinate assertions, shape checks, origin behavior, and SVG snapshots.

Observed

License
ISC
Primary language
TypeScript
Packaging
ES module package named @tscircuit/footprinter; published files are limited to dist.
Install surface
JavaScript package with generated type declarations and circuit-json as a peer dependency.
Interfaces
Typed library API and browser-based SVG preview gallery; no command-line entry is declared.
Test structure
Repository includes Bun tests with value assertions and SVG snapshot matching.

Read from README.md, package.json, src/index.ts, src/footprinter.ts, src/fn/index.ts, gallery/index.tsx, gallery/generate-grid-content.ts, scripts/generate-gallery-page.ts, tests/bga.test.ts, tests/cap.test.ts, tests/dfn.test.ts, tests/dip.test.ts, tests/fpc.test.ts, tests/jst.test.ts, tests/lcc.test.ts.

What it can do

  • Create PCB footprints using a domain-specific language

    DSL code specificationsPCB footprint files

  • Build micro-scale PCB component layouts

    Component specifications and dimensionsMicro-scale PCB footprints

  • Generate footprints optimized for AI processing

    Component parameters and AI requirementsAI-compatible PCB footprint data

  • Define custom footprint patterns programmatically

    Programming logic and component requirementsCustom PCB footprint definitions

  • Automate footprint creation workflows

    Batch component specificationsMultiple standardized PCB footprints

Tags

pcbfootprinttscircuitdsl

Tech Stack

Node.jsTypeScript

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.