Vibeleaderboard
Index / tool
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 interfaceElectronic schematic diagram

  • Edit existing schematic designs

    Existing schematic layoutModified schematic layout

  • Export designs to JSON format

    Completed schematic layoutJSON file with design data

  • Generate tscircuit-compatible designs

    Schematic layouttscircuit electronics design format

  • Design electronics circuits in browser

    Component specifications and connectionsInteractive circuit schematic

Tags

schematiceditorelectronicstscircuitreact

Tech Stack

Node.jsNext.jsTailwind CSSTypeScript

Comments (0)

No comments yet

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