Personal product • Solo developer • 2026 • Beta
EasyPCB
Design a circuit, simulate it with NGSpice and lay out the board, all in the browser.
The problem
Most circuit mistakes are found after the board comes back from the fab. Catching them earlier means switching between a schematic tool, a simulator and a layout tool.
What I built
- Browser schematic editor with KiCad symbol libraries
- Real NGSpice simulation in an isolated backend job: transient, AC, DC, operating point, noise and more
- PCB layout on a custom board engine, sharing one netlist with the schematic
- Design rule check: shorts, clearance, via drill, annular ring, board-edge clearance and courtyard overlap
- KiCad board import and export, and Gerber and drill files for fabrication
- AI assistant for PCB questions, organizations with roles, and paid plans
Engineering decisions
A board engine written from scratch
Geometry, live connectivity with a ratsnest, an interactive router that checks clearance as you draw 45° traces, and a spatial index so design rule checks stay fast on dense boards.
Real files in and out
An S-expression parser reads KiCad .kicad_pcb boards, and the exporter writes Gerber and drill files, so a design never gets locked inside the tool.
Tested where it matters
236 tests across the board engine, database, auth and web app, including every design rule, KiCad parsing, Gerber output and a ratsnest performance check.
Stack
What I learned
Writing the board engine meant learning PCB rules properly: clearance, annular rings, why courtyards matter. The next milestone is a real board manufactured from EasyPCB's own Gerbers.
