Pcbmode
A printed circuit board design tool with a twist
Install / Use
/learn @boldport/PcbmodeREADME

A circuit board design software with a twist
PCBmodE is a circuit board design software written in Python. Its main advantage is allowing the design to create and use arbitrary shapes for any element of the board. Using stock Inkscape as the GUI provides all the features of a drawing tool. This, in contrast to traditional PCB design tools that restrict visual freedom and don't have the full feature set of a vector editing software.
Workflow
PCBmodE folows a layout-driven design flow. There's no schematic functionality or DRC other than the designer's eyes. It's essentiallya script that runs from commandline generating files depending on the stage of the design.
- Text editor: edit input JSON files
- PCBmodE: convert JSON files to Inkscape SVG
- Inkscape: edit SVG (component movement, routing, etc.)
- PCBmodE: extract changes and apply them back to input JSON files
Iterate the above until the design is ready, and then
- PCBmodE: create Gerber files from SVG
- Send to fab
- Get lovely boards back and impress people on Twitter
Requirements
PCBmodE is developed and tested under Linux, so it might or might not work under other OSs.
Resources
- Documentation (needs serious updating!)
- Boldport Club Discord #pcbmode (you need to be a Boldport Club member to have access)
Roadmap
PCBmodE was written and is maintained by Saar Drimer of Boldport. It has been used to design all of Boldport's products since 2013. It is, therefore, very functional but sadly not that well documented and development happens in bursts.
The next version of PCBmodE is v5, codename 'cinco'. For this release I'd like to get the following done:
- Package PCBmodE so it's easy to install
- Update and maintain the documentation
- Migrate to Python3 (drop support for Python2)
- Work with Inkscape 1.x (drop support for previous versions)
- Improve performance and do better than the current simple caching method
- Implement the latest Gerber X2 standard
- Automatic 'gerber-lp' generation from SVG shapes
- Support any font form Google Fonts
- Fully support SVG paths (currently 'l' is buggy and 'a' isn't supported)
New desired extensions:
- Footprint creation wizard
- New project wizard
- Browser viewer of PCBmodE SVGs
- Inkscape add-on to invoke PCBmodE functions from within Inkscape
Contributing
For contributing code, see the CONTRIBUTE.md included in this repository.
If you'd like to contribute towards development in the form of hard cold electronic money, see the end of this page.
The name
The 'mod' in PCBmodE has a double meaning. The first is short for 'modern' (in contrast to tired old EDA tools). The second is a play on the familiar 'modifications' or 'mods' done to imperfect PCBs. Call it 'PCB mode' or 'PCB mod E', whichever you prefer.
License
PCBmodE is licensed under the MIT License.
Related Skills
diffs
340.5kUse the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
1.9kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
HappyColorBlend
HappyColorBlendVibe Project Guidelines Project Overview HappyColorBlendVibe is a Figma plugin for color palette generation with advanced tint/shade blending capabilities. It allows designers to
