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. |