
KiCad Converter
https://github.com/tscircuit/kicad-converter- Category
- Developer Tools
- Rank
- No. 1815Tools index
Previous survey · No. 1823 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- tscircuit
- GitHub
- 14 stars
- Date
About
Converts KiCad footprints into Circuit JSON for use in tscircuit-based electronics designs.
What it does
A TypeScript library for translating board data in both directions between KiCad and Circuit JSON. It also models project and schematic structures with runtime validation schemas.
Why it's ranked here
The bidirectional board conversion and detailed validation layer make it useful for typed electronics pipelines. However, the public entry point exports board and project modules, while the separate schematic module is not exported there.
What's good
It covers footprints, pads, nets, tracks, vias, layers, board graphics, and project settings with explicit TypeScript types. Zod schemas add runtime checks, including constrained pad types and shapes.
Tradeoffs
The schemas accept arbitrary values for several project fields, weakening validation in those areas. Schematic parsing exists in a separate module, but the package entry point shown only re-exports board and project features.
How to use it well
Best for TypeScript teams moving board data between KiCad and tscircuit workflows, especially when runtime validation matters. Treat it as a programmatic library, not a command-line tool or complete project-directory manager.
Technical notes+
package.json defines an npm package built from lib/index.ts with tsup in ESM mode, declarations, and source maps; it lists tscircuit, TypeScript, and Zod as peer dependencies. lib/index.ts re-exports lib/kicad-pcb/index.ts and lib/kicad-pro/index.ts, but not lib/kicad-sch/index.ts. lib/kicad-pcb/zod.ts validates the PCB root plus layers, setup, nets, footprints, segments, and vias. lib/kicad-pro/zod.ts models extensive project settings but uses z.any() for several fields. lib/common/parse-sexpr.ts implements a small tokenizer and recursive S-expression parser whose quoted-string handling does not show escape processing.
Observed
- License
- MIT, according to README.md.
- Primary language
- TypeScript.
- Installation
- Published as the kicad-converter npm package and installed with npm.
- Interface
- Programmatic TypeScript library; no CLI is described in README.md or package.json.
- Package contents
- package.json limits published package files to the dist directory.
- Runtime validation
- Zod schemas cover PCB, project, and schematic data structures.
- Development tooling
- Builds with tsup and runs tests with Bun.
Read from README.md, package.json, lib/index.ts, lib/kicad-pcb/zod.ts, lib/kicad-pro/zod.ts, lib/kicad-sch/zod.ts, lib/kicad-pcb/index.ts, lib/kicad-pro/index.ts, lib/kicad-sch/index.ts, lib/kicad-dir/types.ts, lib/kicad-pcb/types.ts, lib/kicad-pro/types.ts, lib/kicad-sch/types.ts, lib/common/parse-sexpr.ts.
What it can do
Convert KiCad footprints to Circuit JSON
KiCad footprint files → Circuit JSON format files
Transform component footprints for tscircuit compatibility
KiCad component footprints → tscircuit-compatible footprint data
Parse KiCad footprint geometry
KiCad footprint files with pad and trace data → Structured geometric data in Circuit JSON
Convert PCB component layouts
KiCad PCB component definitions → Circuit JSON component layouts
Migrate electronics designs between formats
KiCad-based electronics designs → tscircuit-compatible design files
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.