
Sensor board
restuindrawan/fabready
Pre-order checks for KiCad PCBs: desktop app, CLI and MCP server for AI agents

Pre-order checks for KiCad PCBs: desktop app, CLI and MCP server for AI agents
Macropad buggy is an open-source printed circuit board by restuindrawan, from the restuindrawan/fabready repository on GitHub, published under the MIT licence. It is a 2-layer board of 87 × 58 mm with 22 parts on 17 nets, routed with 66 tracks and 1 via.
It is built around the 1N4148W. Its parts include 10 switches, 8 diodes, 1 IC and 1 connector. It belongs with the keyboards and input and computers and single-board computers boards and the nRF52 and nRF5x boards of this library.
Pre-order checks for KiCad PCBs. fabready finds the mistakes that would cost you a board order before you place it. It runs as a desktop app, a command-line tool and an MCP server for AI agents, all built on one Rust engine.
Thin tracks, undersized vias and copper under an antenna can be fixed automatically, with a preview, a backup and undo.
Desktop app (macOS):
cd app && npm install
npx tauri build --bundles app # fabready.app in target/release/bundle/macos/The first time it opens, a short setup installs KiCad if it's missing and lets you pick your coding agent. Then open a KiCad project folder, or drop it on the window. No design yet? Start a new board (the app creates the KiCad project) or try a sample. The app re-checks every time you save in KiCad. You can view the board layer by layer, edit it Figma-style (move footprints, route tracks, place vias, measure, undo), and chat with Claude Code, Codex or OpenCode about the board you have open.
|
|
| First launch: install KiCad and pick your agent | Start from your design, a new board or a sample |
Command line:
cargo install --path crates/fabready-cli
fabready check path/to/projectAI agents in their own terminal or editor: add fabready as an MCP server so your agent can check the board and apply fixes:
claude mcp add fabready -- fabready mcpEach board's settings (fab profile, limit overrides, power rails, waived findings) live in a
fabready.json next to it. Edit them in the app's Settings tab or by hand.
fabready.json settingfabready runs entirely on your machine and makes no network requests itself. The app's Agent tab starts the
coding agent you pick (Claude Code, Codex or OpenCode). That agent talks to its own AI provider, and on
first use npx downloads its adapter from npm. Nothing is sent until you use the chat. If you click Install
for KiCad in the app's setup, it runs Homebrew or winget, which download KiCad. fabready only writes:
fabready-out/ next to your board: reports, images, and backups made before automatic fixes.kicad_pcb, only when you or your agent apply an automatic fix, or you edit the board in the appfabready.json next to your board, only when you change settings or waive a finding in the app~/.fabready/agent.json: the name of the last agent that connected over MCP, shown in the appfabready catches common mistakes, but it doesn't replace your fab's DRC, the parts' datasheets, or your own review. The fab profiles and part ratings are typical values and may be out of date. Always confirm with your manufacturer before ordering. KiCad, JLCPCB and other names are trademarks of their owners, and fabready isn't affiliated with them.
MIT. Third-party components and trademarks are listed in
THIRD-PARTY-NOTICES.md.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 9 | SW_Push | fabready_samples:SW_MX_1u | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9 |
| 8 | 1N4148W | Diode_SMD:D_SOD-123 | D1, D2, D3, D4, D5, D6, D7, D8 |
| 2 | MountingHole | MountingHole:MountingHole_2.2mm_M2 | H1, H2 |
| 1 | Battery | fabready_samples:JST_PH_2pin | J1 |
| 1 | Power | fabready_samples:SW_Slide_SPDT | SW10 |
| 1 | nice!nano | fabready_samples:nice_nano | U1 |

restuindrawan/fabready
Pre-order checks for KiCad PCBs: desktop app, CLI and MCP server for AI agents

fossasia/pslab-hardware
PSLab Hardware Design and Schematics https://pslab.io

pierrechevalier83/ferris
A low profile split keyboard designed to satisfy one single use case elegantly



MickiusMousius/Rolio46Keyboard
A split wireless keyboard based on the Corne and Sofle


sadekbaroudi/bgkeeb
This is a reversible 100mm x 100mm pcb with support for mx or choc switches (no hotswap), per key led, rotary encoders, and exposes the SDA/SCL/GND/VCC lines in the form of the pimoroni trackball pins (meaning you can…

It measures 87 × 58 mm and has 2 copper layers, 1.6 mm thick.
22 parts, built around the 1N4148W. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the restuindrawan/fabready repository on GitHub, at the commit this page was made from: the board is samples/macropad-buggy/macropad-buggy.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).