
Schematic Layout Editor
https://github.com/tscircuit/schematic-layout-editor- Category
- Developer Tools
- Rank
- No. 1850Tools index
Previous survey · No. 1858 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- tscircuit
- GitHub
- 2 stars
- Date
About
Browser-based schematic layout editor with JSON export for tscircuit electronics designs.
What it does
It lets contributors assemble reusable schematic references from chips, two-pin parts, wires, net labels, and branching junctions. Designs can be loaded from JSON, edited on a snapping grid, downloaded, then submitted for approval into the corpus used by tscircuit’s netlist-matching layout system.
Why it's ranked here
This is a focused corpus-authoring tool with practical editing mechanics and a direct contribution path. Grid snapping, orthogonal wire routing, keyboard controls, and legacy JSON compatibility support real work. Confidence is tempered by build settings that ignore both TypeScript and lint errors, plus visible gaps around chip pin placement.
What's good
The editor covers the reference format’s important structures instead of offering a generic drawing canvas. It calculates rotated passive endpoints, adjusts net-label anchors through quarter turns, supports connection waypoints and junctions, and lets users tune chip pin spacing. Shortcuts cover tool selection, connection mode, rotation, and cancellation.
Tradeoffs
Chip controls add pins only on the left or right, while the data model permits top and bottom pins. Positioning logic also notes that top and bottom chip pins still need equivalent handling. Scale is fixed, with zoom merely identified as a possible future concern. Production builds suppress type and lint failures.
How to use it well
Use it when preparing or correcting reference layouts for tscircuit’s match-adapt corpus, especially when explicit pin geometry and routed paths matter. Load existing layout JSON, refine placement and spacing, download the result, then submit it for approval. It does not replace circuit capture, simulation, or general electronics design software.
Technical notes+
The client entry in app/page.tsx composes Toolbar, SchematicEditor, dialogs, and useSchematicState. types/schematic.ts defines both CircuitLayoutJson and legacy SchematicLayout shapes, including boxes, paths, junctions, and net labels. lib/geometry.ts implements grid snapping, coordinate conversion, distance tests, and generateDrawableOrthogonalPath. lib/schematic-utils.ts resolves endpoints and rotated anchors, but chip endpoint placement handles only left and right sides. components/load-dialog.tsx accepts pasted JSON. next.config.mjs sets ignoreDuringBuilds and ignoreBuildErrors to true, while package.json exposes Next.js development, build, lint, and Biome formatting scripts.
Observed
- Primary language
- TypeScript with React components
- Application surface
- Client-side web interface built with Next.js 15 and React 19
- Packaging
- Private npm package with development, build, lint, and formatting scripts
- Data interface
- Imports pasted schematic JSON and downloads schematic data
- Layout formats
- Defines current and legacy JSON structures for boxes, paths, junctions, and net labels
- Styling and UI
- Uses Tailwind CSS, Radix UI dependencies, and Lucide icons
Read from README.md, package.json, lib/utils.ts, lib/geometry.ts, lib/schematic-utils.ts, next.config.mjs, postcss.config.mjs, tailwind.config.ts, app/page.tsx, app/layout.tsx, hooks/use-toast.ts, types/schematic.ts, hooks/use-mobile.tsx, components/toolbar.tsx, components/load-dialog.tsx.
What it can do
Create schematic layouts
User design input via browser interface → Electronic schematic diagram
Edit existing schematic designs
Existing schematic layout → Modified schematic layout
Export designs to JSON format
Completed schematic layout → JSON file with design data
Generate tscircuit-compatible designs
Schematic layout → tscircuit electronics design format
Design electronics circuits in browser
Component specifications and connections → Interactive circuit schematic
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.