Skip to content

Python API

Generated from the code

This page is written from the module docstrings each time the site is built. To change it, change the code.

Module and function documentation, from the docstrings. Only documented functions are shown.

Module Summary
wholeboard.ai.agent The design agent: talks to the user, picks parts, writes the spec, iterates on results.
wholeboard.ai.expert A second, stronger model that plans the design and reviews it, while a cheaper model does the legwork.
wholeboard.ai.providers AI providers behind one small interface.
wholeboard.auth Optional password for other computers on the network.
wholeboard.bench The benchmark: reference prompts run end to end, to see whether a change to a model, a prompt or a block helps.
wholeboard.blocks Proven building blocks: tested sub-circuits the AI drops into a design whole.
wholeboard.boxheat Heat in an enclosure: how warm the air inside the box gets, and how hot its surfaces are to the touch.
wholeboard.bringup The bring-up guide: a checklist for powering a new board for the first time, from the simulation.
wholeboard.case Fit the board into a box you already have, and print drilling templates for its walls and lid.
wholeboard.checks Physical checks on the routed board: trace heating, voltage drop and decoupling placement.
wholeboard.config User settings, stored as JSON in the user's home folder.
wholeboard.design The design spec the AI writes, and its validation against the KiCad libraries.
wholeboard.doctor Check WholeBoard's dependencies and install the ones that need no administrator rights.
wholeboard.dxf Read a board outline from a DXF drawing: the largest closed shape is the board, circles are holes.
wholeboard.enclosure 3D-printable enclosures, designed by the AI and built in FreeCAD.
wholeboard.firmware Starter firmware for boards with a microcontroller: a PlatformIO (Arduino) project whose pins.h
wholeboard.freecad_enclosure Build a WholeBoard enclosure in FreeCAD.
wholeboard.fwbuild Compile the starter firmware with PlatformIO, and collect what a browser needs to flash it.
wholeboard.ibom An interactive assembly page: one self-contained HTML file with the board drawing and a clickable BOM.
wholeboard.impedance Controlled-impedance traces: widths and gaps from JLCPCB's layer stack, and a length check after routing.
wholeboard.jlc.fabs Compare the bare-board price at other fabs with the JLCPCB quote.
wholeboard.jlc.panel Panels for small boards: price several copies on one panel against single boards.
wholeboard.jlc.parts Look up and search JLCPCB/LCSC parts: stock, library type and price breaks.
wholeboard.jlc.quote Build a full JLCPCB quote: bare PCB, assembly, components and shipping.
wholeboard.jlc.savings Cheaper parts: basic or preferred JLCPCB parts that can replace extended ones, with the saving.
wholeboard.jlc.stock Live stock check before ordering: JLCPCB's stock moves daily, so check again right before you order.
wholeboard.jlc.suppliers Prices from Mouser and DigiKey for the parts JLCPCB cannot fit: no LCSC number, missing, or short of stock.
wholeboard.kicad.board Write a KiCad 10 project (.kicad_pro + .kicad_pcb) from a design spec.
wholeboard.kicad.cli Run kicad-cli: design-rule checks, manufacturing exports and renders.
wholeboard.kicad.dru A KiCad custom-rules file (.kicad_dru) with JLCPCB's manufacturing limits.
wholeboard.kicad.geometry Read a .kicad_pcb into simple JSON geometry for the browser board view.
wholeboard.kicad.handedit Keep the changes a user makes in KiCad to a finished board.
wholeboard.kicad.importer Turn an existing KiCad project (schematic, and the board if there is one) into a WholeBoard spec.
wholeboard.kicad.libs Find KiCad's footprint and symbol libraries, search them and read footprints.
wholeboard.kicad.panelize Panels drawn with KiKit: copies of the board on rails, ready to order as one panel.
wholeboard.kicad.schematic Write a KiCad 10 schematic (.kicad_sch) from a design spec.
wholeboard.mains Mains safety: creepage, clearance, a fuse and an isolation barrier for boards that touch mains.
wholeboard.mcp WholeBoard's checks as an MCP server, for any agent (Claude Code, Codex, Backplane) and any KiCad project.
wholeboard.models3d KiCad 3D models: find or download them so renders show real parts, and measure part heights.
wholeboard.ngspice Find and run ngspice, the circuit simulator, and read its results.
wholeboard.ngspice_shared Run a netlist through the ngspice shared library (e.g. the one KiCad bundles).
wholeboard.pipeline Turn a design spec into a checked, routed, quoted board, step by step.
wholeboard.power Power budget and heat: what each supply and regulator delivers, against what it can, from the simulation.
wholeboard.project Projects on disk: state, an append-only event log, and live listeners.
wholeboard.report A PDF report of the project: summary, renders, cost, BOM, simulation, power and enclosure, then the schematic.
wholeboard.revisions Revision history: a summary of every build, comparisons between two designs, and restoring one.
wholeboard.router Run TraceMaker's placer and router.
wholeboard.server FastAPI server: REST API, live event stream and the web UI.
wholeboard.sexpr A small S-expression reader and writer for KiCad files.
wholeboard.sim Simulate a design spec with ngspice and check the circuit against its parts' ratings.
wholeboard.simlab Sim Lab: the circuit simulation laid over the finished board in 3D.