
Circuit to SVG
https://github.com/tscircuit/circuit-to-svg- Category
- Developer Tools
- Rank
- No. 1516Tools index
Previous survey · No. 1528 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- tscircuit
- GitHub
- 18 stars
- Date
About
Converts Circuit JSON into schematic, PCB, and assembly SVGs for the tscircuit electronics design stack.
What it does
A TypeScript rendering library that accepts structured circuit data and returns SVG strings. Beyond board and diagram views, it can produce pinouts, solder-paste masks, simulation graphs, and combined simulation overlays.
Why it's ranked here
Its appeal comes from unusually broad rendering coverage behind one library interface. Custom sizing, colors, CSS, annotations, layer controls, and optional error markers make the output useful for documentation and debugging, not merely static previews.
What's good
The renderers expose practical controls instead of forcing one presentation. Schematics accept grids, labeled points, palette overrides, classes, and CSS. Board views can match board proportions, show pin numbers or paste, hide notes, and visualize several clearance and overlap errors.
Tradeoffs
The documented workflow requires prepared Circuit JSON and offers a library interface, not a standalone command-line tool. Several outputs have different option shapes and default dimensions. Installation also carries a peer dependency on the tscircuit alphabet package.
How to use it well
Use it inside TypeScript tooling that already produces Circuit JSON and needs embeddable diagrams, board previews, pinout documentation, stencil views, or simulation plots. Keep circuit authoring and simulation execution elsewhere, since the documented surface renders existing data and results.
Technical notes+
package.json defines an ESM package whose published surface is dist, built from lib/index.ts with tsup-node, declaration files, and source maps; tscircuit is externalized during the build. lib/index.ts re-exports the PCB, assembly, pinout, schematic, stacked-sheet, solder-paste, and simulation renderers plus color and metadata utilities. lib/convert-circuit-json-to-schematic-simulation-svg.ts filters simulation records from schematic elements, renders schematic and graph SVGs separately, parses them with svgson, translates the nested SVG nodes, and serializes one combined root. lib/sim/types.ts supplies type guards for experiment, probe, oscilloscope, transient, DC, and AC result records. lib/pcb/colors.ts exposes typed PCB palette overrides, while lib/utils/colors.ts provides the broader KiCad 2020-derived color map.
Observed
- License
- ISC
- Primary language
- TypeScript
- Packaging
- ES module npm package publishing only the dist directory
- Installation
- Documented installation through npm or Bun
- Interface
- Library API returning SVG strings; package metadata declares no CLI binary
- Build output
- Build configuration emits ESM, TypeScript declarations, and source maps
- Peer dependency
- Requires @tscircuit/alphabet as a peer dependency
Read from README.md, package.json, lib/index.ts, lib/svg-object.ts, lib/package-version.ts, lib/convert-circuit-json-to-schematic-simulation-svg.ts, lib/sim/types.ts, lib/pcb/colors.ts, lib/utils/debug.ts, lib/utils/pairs.ts, lib/utils/colors.ts, lib/pinout/constants.ts, lib/pinout/pinout-utils.ts, lib/utils/ring-to-path-d.ts, lib/utils/net-label-utils.ts.
What it can do
Convert Circuit JSON to schematic SVG
Circuit JSON data → Schematic SVG file
Convert Circuit JSON to PCB SVG
Circuit JSON data → PCB layout SVG file
Convert Circuit JSON to assembly SVG
Circuit JSON data → Assembly diagram SVG file
Generate visual circuit representations
tscircuit electronics design data → Multiple SVG visualization formats
Tags
Tech Stack
Media

Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.