Skip to article frontmatterSkip to article content

GDSFactory 9.5.0

docs PyPI PyPI Python Downloads MIT codecov Binder

As input you write python code, as an output GDSFactory creates CAD files (GDS, OASIS, STL, GERBER).

cad
import gdsfactory as gf

c = gf.Component()
ref1 = c.add_ref(gf.components.rectangle(size=(10, 10), layer=(1, 0)))
ref2 = c.add_ref(gf.components.text("Hello", size=10, layer=(2, 0)))
ref3 = c.add_ref(gf.components.text("world", size=10, layer=(2, 0)))

ref1.xmax = ref2.xmin - 5
ref3.xmin = ref2.xmax + 2
ref3.rotate(30)
c.show()

Highlights:

workflow

We provide a comprehensive end-to-end design flow that enables you to:

Your input: Python or YAML text. Your output: A GDSII or OASIS file for fabrication, alongside component settings (for measurement and data analysis) and netlists (for circuit simulations) in YAML.

We provide a common syntax for design (Ansys, Lumerical, Tidy3d, MEEP, DEVSIM, SAX, MEOW, Xyce ...), verification, and validation.

tool interfaces

GDSFactory+

GDSFactory+ offers Graphical User Interface for chip design, built on top of GDSFactory and VSCode. It provides you:

Accessing Foundry PDKs

Access to GDSFactory PDKs under NDA requires a GDSFactory+ subscription.

To sign up, visit GDSFactory.com. Once registered, you can request access to foundry PDKs that require an NDA with the respective foundry.

Available Foundry PDKs under NDA:

There are also open-source PDKs available that do not require an NDA:

Getting started

Who is using GDSFactory?

Hundreds of organisations are using GDSFactory. Some companies and organizations around the world using GDSFactory include:

logos

“I’ve used GDSFactory since 2017 for all my chip tapeouts. I love that it is fast, easy to use, and easy to extend. It’s the only tool that allows us to have an end-to-end chip design flow (design, verification and validation).”

Joaquin Matres - Google

“I’ve relied on GDSFactory for several tapeouts over the years. It’s the only tool I’ve found that gives me the flexibility and scalability I need for a variety of projects.”

Alec Hammond - Meta Reality Labs Research

“The best photonics layout tool I’ve used so far and it is leaps and bounds ahead of any commercial alternatives out there. Feels like GDSFactory is freeing photonics.”

Hasitha Jayatilleka - LightIC Technologies

“As an academic working on large scale silicon photonics at CMOS foundries I’ve used GDSFactory to go from nothing to full-reticle layouts rapidly (in a few days). I particularly appreciate the full-system approach to photonics, with my layout being connected to circuit simulators which are then connected to device simulators. Moving from legacy tools such as gdspy and phidl to GDSFactory has sped up my workflow at least an order of magnitude.”

Alex Sludds - MIT

"I use GDSFactory for all of my photonic tape-outs. The Python interface makes it easy to version control individual photonic components as well as entire layouts, while integrating seamlessly with KLayout and most standard photonic simulation tools, both open-source and commercial.

Thomas Dorch - Freedom Photonics

Why Use GDSFactory?

GDSFactory is really fast thanks to KLayout C++ library for manipulating GDS objects. You will notice this when reading/writing big GDS files or doing large boolean operations.

BenchmarkgdspyGDSFactoryGain
10k_rectangles80.2 ms4.87 ms16.5
boolean-offset187 μs44.7 μs4.19
bounding_box36.7 ms170 μs216
flatten465 μs8.17 μs56.9
read_gds2.68 ms94 μs28.5

Contributors

A huge thanks to all the contributors who make this project possible!

We welcome all contributions—whether you’re adding new features, improving documentation, or even fixing a small typo. Every contribution helps make GDSFactory better!

Join us and be part of the community. 🚀

contributors

Stargazers

Stargazers over time