Skip to main content

KLayout API implementation of gdsfactory

Project description

KFactory 0.11.0

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

:exclamation: KFactory is still experimental, expect API changes without notice (even though we try to keep it to a minimum!)

It is suggest to pin the version of KFactory in requirements.txt or pyproject.toml with kfactory==0.11.0 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.11.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kfactory-0.11.0-py3-none-any.whl (108.4 kB view details)

Uploaded Python 3

File details

Details for the file kfactory-0.11.0.tar.gz.

File metadata

  • Download URL: kfactory-0.11.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for kfactory-0.11.0.tar.gz
Algorithm Hash digest
SHA256 650c4c14d51a38b617024b0f64182e3a4b8905e265982702b4e0af8ff0d69d1c
MD5 c416f44887dccec80d0006ab35eb2afc
BLAKE2b-256 8e10c66c0cffcc4a99ca5688e3794b2a28baab6c322c89b4b4f9caa816c2408e

See more details on using hashes here.

File details

Details for the file kfactory-0.11.0-py3-none-any.whl.

File metadata

  • Download URL: kfactory-0.11.0-py3-none-any.whl
  • Upload date:
  • Size: 108.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for kfactory-0.11.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd21f7accafe46f045653314b0cd49be0afa8be8f48f3cb04eb41522e3b27ff0
MD5 c02afb8a6a575da87cb96cfd402ac8fc
BLAKE2b-256 8afa13c1e63c5db800dd28a5609e25c6d7657fed75345843106b55585c5b0ae5

See more details on using hashes here.

Supported by

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