fairypcbot is a text-driven PCB-building framework. Instead of you (or an LLM) dragging parts around a canvas, you describe intent in a plain YAML file — parts, nets, electrical requirements (power rails, differential pairs, decoupling), and loose placement hints (edge anchors, region preferences, proximity constraints). No raw coordinates, ever. An LLM can write that file for you end-to-end, from a one-line idea to a full board description — but every step in between is checked, visible, and yours to steer.

The pipeline:

  • Intent — you (or your LLM) write intent.yaml: parts, nets, electrical intent, placement hints.
  • Validatefae validate checks references, pins, and structure, with actionable error messages.
  • Elaboratefae elaborate builds a netlist and runs an electrical linter: power budgets, voltage compatibility, floating pins, missing decoupling.
  • Placefae place groups related parts into domains (a buck converter, a crystal + its caps) and generates 1–3 layout candidates as SVGs you can inspect before committing to anything.
  • Emitfae emit materializes the design into an importable project for your CAD tool of choice. EasyEDA Standard JSON is supported today; Specctra/KiCad targets are on the roadmap — the framework itself doesn't lock you into one destination.

You're never locked out of your own board. Every stage produces something you can read and act on: validation errors come back as structured, actionable JSON; the electrical linter report is plain text you can respond to; placement candidates are SVGs you can comment on in natural language (the LLM turns your comments into placement hints) or edit directly by hand-locking positions in placement.lock.yaml — locked positions survive regeneration, and if a lock conflicts with a domain rule, the tool warns you about the cost instead of silently overriding your call. Every decision is logged to an audit trail, so any artifact in the final board can be traced back to the intent that produced it. If you'd rather stop trusting the automation at any point and finish the board by hand with conventional PCB engineering, nothing stops you — the framework hands you a clean, inspectable intermediate state at every stage, not a black box.

Where it stands today: fairypcbot already takes a design from intent to a ready-to-route EasyEDA project! It is not fully stable, so we need some help here. Schematic and placement done, autoroute and fabrication are the next step and currently left to you in your CAD of choice. No SPICE simulation by now, no autorouting yet. fairypcbot verifies and materializes, it doesn't replace your judgment on the bench.

Repo, docs, and examples (including a fully analog BFO metal detector, off-board search coil and all) on GitHub: https://github.com/fabriciorit/fairypcbot. Try it, break it, tell us what's missing.