Skip to main content

KLayout API implementation of gdsfactory

Project description

KFactory 2.0.0

codecov

Kfactory is the backend for gdsfactory. It is built upon KLayout. It offers basic operations like gdsfactory, so it can be used on its own as as layout tool as well.

It is recommended to pin the version of KFactory in requirements.txt or pyproject.toml with kfactory==2.0.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
  • CrossSection
  • Netlist/Schematics and LVS

Notable missing Features:

  • 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

Getting Started

Installation

kfactory is available as kfactory on PyPI

Install kfactory with uv, or pip:

# Add kfactory to your project.
uv add kfactory

# With pip.
pip install kfactory

At the moment kfactory works only on python 3.11 and above

Development Installation

A development environment can be installed with

just dev

For committing pre-commit should be installed with pre-commit install (this is done with just dev).

Project details


Release history Release notifications | RSS feed

This version

2.0.1

Download files

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

Source Distribution

kfactory-2.0.1.tar.gz (252.1 kB view details)

Uploaded Source

Built Distribution

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

kfactory-2.0.1-py3-none-any.whl (244.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: kfactory-2.0.1.tar.gz
  • Upload date:
  • Size: 252.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kfactory-2.0.1.tar.gz
Algorithm Hash digest
SHA256 ce03273ecf23e1cb9db0f5ce4d67b6d8207ec49927359a8cc7221699c0b75aee
MD5 6bca200f1edf0d9fe4940e6ba4436854
BLAKE2b-256 212bf0c2da95a582f66fb9f5c7f43c8c1b92c0aa44fc49cc4b7ed82188deeb1f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: kfactory-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 244.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kfactory-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 856dd2eb3e08dcf2eadd5f0e14222463fd8b770285afe4f4b983a945ea7e1153
MD5 d9813e75ac0481006e291c23af4f4d91
BLAKE2b-256 4741abf434ab6ddbd1b3ef69b1e57120b27df1dbaf7823e5fc529b19839ba84a

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