skillfed

pyedb

Higher-Level Pythonic Ansys Electronics Data Base

pyedb v0.81.0 142.7K downloads/30d#11,203 on PyPI29
Permissive license MIT Active released

What it is and what it does

PyEDB is a Python wrapper around Ansys's Electronics Database (EDB) format, designed to make layout automation accessible without deep knowledge of the underlying database implementation. It provides high-level, application-oriented workflows for common tasks like opening or creating EDB projects, editing stackups and materials, managing components and nets, working with padstacks and ports, building cutouts, and preparing designs for electromagnetic solver workflows (HFSS, SIwave, Maxwell, Q3D, Icepak).

The package abstracts backend complexity through a consistent public API, meaning most users can focus on their layout tasks rather than implementation details. It runs as a standalone API without requiring a graphical interface, enabling fast batch processing of large and complex layouts. The package depends on numpy, pydantic, toml, ansys-edb-core, psutil, defusedxml, xmltodict, and typer, and supports Python 3.10 through 3.14.

Use it for:

  • Automate PCB layout design workflows in batch without opening Ansys Electronics Desktop UI.
  • Programmatically edit stackups, materials, and component placement in existing AEDB files.
  • Prepare complex layouts for electromagnetic simulation by scripting port and padstack definitions.
  • Translate and process large layout designs from external formats into AEDB for solver workflows.
  • Build custom design validation or modification tools on top of the PyEDB API.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

PyEDB is a high-level Python API for reading, creating, and editing Ansys Electronics Database (EDB) layout designs, exposing workflows for stackups, materials, components, nets, padstacks, ports, and cutouts without requiring direct backend knowledge.

Yes, if you have a licensed copy of AEDT and need to automate EDB layout workflows. The package is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive MIT license. The main constraint is the external dependency on ansys-edb-core and AEDT itself, which limits use to organizations with existing Ansys licenses.

Install

pyedb on PyPI

pip

pip install pyedb

uv

uv add pyedb

poetry

poetry add pyedb

Installing pyedb

Before you install

Low friction: pure Python wheel with no compiled dependencies. Active maintenance with a release 19 days old and recent commits. Requires ansys-edb-core as a runtime dependency, which may require a separate Ansys installation.

License in practice

MIT license permits commercial and private use with minimal restrictions. Note that PyEDB itself is licensed permissively, but using it requires a legally licensed local copy of AEDT.

Quickstart

pip install pyedb

from pyedb import Edb

edb = Edb(edbpath="myedb.aedb", version="2026.1")
# stackup, materials, components, nets, ports, padstacks, cutouts...
edb.close()

Requires a legally licensed local copy of AEDT (Ansys Electronics Desktop) and ansys-edb-core installed; Python 3.10 or later.

Verify before relying

  • Whether ansys-edb-core is freely available or requires a separate Ansys license purchase.
  • Performance characteristics when handling very large or complex layouts.
  • Compatibility matrix between PyEDB versions and AEDT versions beyond the example shown.

Package facts

License MIT (permissive)
Python support supports the current Python release (<4,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 8 — numpy, pydantic, toml, ansys-edb-core, psutil, defusedxml, xmltodict, typer
Maintenance actively maintained — 19 days since the last release
Last repo commit
First released
Downloads 142,682/month — #11,203 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyedb-0.81.0-py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: Science/ResearchOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/Engineering :: Information Analysis

Tags

ansys edb python apielectronics layout design automationaedb file manipulation pythonpcb layout scriptingansys electronics database
ansys-integrationpcb-designlayout-automation

More Information Analysis packages