IQM KQCircuits - Automate the design of
superconducting quantum circuits

About KQCircuits

KQCircuits is a Python library developed by the Aalto University and IQM Quantum Computers for automating the design of superconducting quantum circuits. It uses the KLayout layout design program API.

KQCircuits generates multi-layer 2-dimensional geometry representing common structures in quantum processing units (QPU). KQCircuits includes definitions of parametrized geometrical objects or “elements” and a framework to easily define your own elements. KQCircuits allows the user to get geometry from the elements under different sets of parameters and to assemble a full QPU design by combining many of the elements in different geometrical relations. The QPU designs used to create an optical mask layout are then combined with EBL patterns used for fabrication of quantum circuits. The final design is exported as a set of files fora mask as needed for QPU fabrication.

Why KQCircuits?

Quantum processor design is integral to the advancement of quantum innovation, but it is a difficult, time consuming process that involves several repetitive tasks.

Elements in KQCircuits are fully parameterised and many tasks involved with QPU design are automated, allowing the user to design multi-qubit QPUs more efficiently.

Our vision is to develop a community-driven universal platform capable of orchestrating quantum chip development from concept to fabrication in a simple and open framework.

If you have any inquiries
regarding our products
or company, please feel free
to reach out to us!
Contact us
Contact us

Getting started


KQCircuits is a KLayout extension, therefore KLayout needs to be installed first. KLayout can be used either as a graphical user interface or as a standalone python module. KQCircuits supports both modes of operation.


For the first time users, we recommend installing KLayout as a graphical user interface tool. After that KQCircuits can be installed using KLayout's internal SALT package manager tool as shown here.


If GUI features in KLayout are not needed, KQCircuits can be installed using the pip tool by running: pip install kqcircuits


See KQCircuits documentation on how to perform a Developer Setup if you are interested in modifying KQCircuits code. You can send us a pull request on KQCircuits' github page if you wish to contribute to this project.

Discover more
from our videos

IQM Contributor License Agreement

IQM develops copyright-protected software and shares some under open source licenses. While the community can use and modify this software, IQM retains copyrights, allowing them to offer different licensing models and enforce copyright protection. Contributors must sign a Contributor License Agreement (CLA) to clarify the intellectual property license terms, safeguarding both their interests and IQM's.

Please read the contributor license agreements and select the right option from below:

IQM Open Source Trademark Policy

IQM's trademark, representing quality and reliability in quantum computing, is crucial to its reputation. The trademark policy outlines acceptable uses of IQM's trademarks, service marks, and logos to maintain their status as indicators of quality. Adherence to this policy is required for anyone using these trademarks. The policy aims to balance preserving trademark integrity with allowing community contributions to IQM software.
For questions or comments, contact details are provided at the policy's end.

Read more

Explore further: 

Quantum computing
- introduction

Go to quantum computing