Repositories
FalCAD is a set of single-package repositories (ADR 0001). Check them out side by side in one folder. Local dependencies are file:../<repo> links.
| Repository | Contents | Main commands |
|---|---|---|
falcad-format |
.falcad spec, schemas, canonical JSON, migrations, safe loaders |
npm run ci (tests + schema drift) |
falcad-library |
built-in symbols and footprints | npm run ci (tests + export drift) |
falcad-kernel |
connectivity, ERC, transactions, collaboration reference, templates, capabilities | npm run ci (tests + conformance vectors) |
falcad-sim |
analog MNA engine, logic engine, SPICE export, ngspice adapter | npm run ci |
falcad-pcb |
board model, DRC, Gerber/Excellon/BOM/CPL, 3D mesh, routing helpers | npm run ci, npm run example |
falcad-hdl |
HDL language services, VCD, Yosys/nextpnr (WASM) | npm run ci |
falcad-mcu |
ATmega328P emulation, AVR assembler, Intel HEX, firmware toolchain adapters, hardware guard | npm run ci |
falcad-toolchains |
toolchain manifests, license ledger, detection, hardened process runner | npm run ci |
falcad |
the application (web + Electron) | npm run ci (unit + build + Playwright e2e incl. Electron) |
falcad-cli |
falcad command and the local MCP server |
npm run ci |
falcad-sdk / falcad-extensions |
extension API, host and examples | npm run ci |
falcad-docs |
this site | npm run sync && npm run build |
Private: falcad-cloud (ASP.NET Core service), falcad-infra, falcad-product.
Conventions
- Every repository has
README.md,STATUS.md(verified features with the exact commands, gaps, decisions, the next action) and, where it ships third-party code,THIRD_PARTY_NOTICES.md. - Before running npm, dotnet or Electron commands on a machine with little system-drive space, point caches at a scratch folder through environment variables. Repositories never contain machine paths.
- Commits are small and atomic. Generated files are committed together with the change that regenerates them.