circuit-json-to-kicad

Exporter from tscircuit Circuit JSON to KiCad schematics and layouts.

ToolchainOpen sourceActiveECAD

What it does and how it connects

circuit-json-to-kicad converts Circuit JSON files to KiCad schematic (.kicad_sch), PCB (.kicad_pcb), and project (.kicad_pro) files. Circuit JSON is an open-source file format for describing electronic circuits, and this library lets the user generate KiCad-compatible files from Circuit JSON, so KiCad's PCB design tools can be used with circuits defined in code.

Three converters cover the three outputs: CircuitJsonToKicadSchConverter for schematics, CircuitJsonToKicadPcbConverter for layouts, and CircuitJsonToKicadProConverter for projects. It installs from npm or bun, and the README walks through a complete example with tscircuit: define the circuit in TypeScript and React, render it, then convert to a schematic and a PCB.

If a circuit declares tscircuit schematicsheet elements and assigns components to them with the schSheetName prop, the converter emits a KiCad hierarchical schematic: a root .kicad_sch with one sheet node per sheet, plus a separate child .kicad_sch file for each sheet's contents. The README also documents the project structure and links a page explaining Circuit JSON.

  • tscircuit core

    Builds Circuit JSON from TypeScript and React elements, producing what this exporter consumes, rather than converting it to KiCad.

  • tscircuit

    The full code-based PCB toolchain that produces Circuit JSON, rather than the exporter that turns Circuit JSON into KiCad files.

  • atopile

    Describes boards in the atopile language and compiles them to KiCad, rather than converting Circuit JSON to KiCad.

  • diodeinc/pcb

    Describes schematics in Zener, a Starlark-based language, and generates KiCad layouts, rather than converting Circuit JSON.

  • pcbkit

    Generates KiCad boards from Python code, rather than converting Circuit JSON into KiCad files.

Recurring errors it addresses

Error Index entries this tool is built to reduce or work around.

Sources

  1. 1READMEgithub.com
  2. 2GitHub repo statsapi.github.com

Not verified

  • License: the GitHub API classifies the license as NOASSERTION, but the LICENSE file text is the MIT License (copyright tscircuit Inc.), so MIT is used from the LICENSE text.
  • No GitHub releases exist, so latest release fields are null.
  • Pricing: none stated on the repo.
  • Real user voices: recent repo activity is bot and contributor pull requests.

Last verified November 6, 2026. Listings are informational. The evidence score measures public, verifiable evidence and is not an endorsement or a compatibility claim.