KiCad is a cross-platform electronic design automation suite that provides schematic capture, printed circuit board layout, and visualization tools for electronics engineers and hobbyists.
The tool addresses the need for a complete, integrated workflow in circuit design by combining a schematic editor, PCB layout editor, 3D viewer, and supporting utilities into a single application. Its architecture separates concerns across specialized modules: the schematic editor handles circuit diagrams, the PCB editor manages board layout, the 3D viewer renders physical board representations, and auxiliary tools handle tasks like gerber viewing, bitmap conversion to PCB artwork, and footprint assignment. The project manager ties these components together, allowing users to move seamlessly between design phases within one project context.
Adoption suits teams and individuals working on electronics projects of any scale who need an open-source alternative to commercial EDA software. The tool runs on Linux, macOS, and Windows, making it accessible across development environments. The codebase is written in C++ with wxWidgets for the user interface, and the project includes comprehensive developer documentation, a contribution guide, and an active forum for community support. Those considering adoption should note that this GitHub repository is a mirror of the primary development repository hosted on GitLab; pull requests submitted here are not monitored or accepted, and contributors should work through the official GitLab repository instead.
The project maintains active continuous integration pipelines for Linux and Windows builds, with automated testing infrastructure present in the codebase. Development follows structured guidelines documented in the contribution guide and developer documentation. The codebase includes unit testing frameworks and enforces code formatting standards through configuration files for clang-format and uncrustify. Translation management is handled through a dedicated platform, indicating organized internationalization efforts across the project.