Skip to main content

KLayout API implementation of gdsfactory

Project description

KFactory 0.21.5

Kfactory is a gdsfactory-like tool. It is built with KLayout as a backend instead of gdstk, but aims to offer the similar features.

[!CAUTION] KFactory is still experimental Expect API changes without notice (even though we try to keep it to a minimum!). The core should be fairly stable with the exception of the all-angle router. It is likely to change in future releases

It is suggest to pin the version of KFactory in requirements.txt or pyproject.toml with kfactory==0.21.5 for example.

Features similar to gdsfactory:

  • Cells & decorator for caching & storing cells
  • Simple routing (point to point and simpl bundle routes for electrical routes)
  • Basic cells like euler/circular bends, taper, waveguide
  • Path extrusion (no interface with CrossSections)
  • Jupyter integration
  • PDK/package configuration
  • Plugin system (simulations etc.) - Check kplugins
  • Generic PDK example - Check kgeneric

Notable missing Features:

  • CrossSection
  • Netlist/Schematics and LVS
  • More advanced routing

New/Improved Features:

  • Fully hierarchical bi-directional conversion to YAML
  • Automatic snapping to grid thanks to KLayout
  • More features for vector geometries due to concept of Point/Edge/Vector/Polygon from Klayout
  • Easy booleans thanks to KLayout Regions
  • Enclosures: use the concept of enclosures, similar to cross sections, to allow automatic calculation of boolean layers for structures based on minkowski sum, which are built into KLayout

Installation

kfactory is available on pypi

pip install kfactory

At the moment kfactory works only on python 3.10 and above

Development Installation

A development environment can be installed with

python -m pip install -e .[dev]

It is defined in pyproject.toml. For committing pre-commit should be installed with pre-commit install.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kfactory-0.21.5.tar.gz (1.3 MB view hashes)

Uploaded Source

Built Distribution

kfactory-0.21.5-py3-none-any.whl (167.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page