salamandra
Framework for netlist manipulation
What it is and what it does
Salamandra is an object-oriented framework for working with electronic circuit netlists in Python. It provides core classes—Component, Net, Param, and Pin—that let you build hierarchical circuit descriptions programmatically, define connectivity between pins and nets, manage parameters (like transistor width and length), and export the result to Verilog format. You can create leaf components like transistors, compose them into higher-level blocks like inverters, connect pins to nets or constants, and manipulate the netlist structure through operations like flattening, cloning, and uniquification.
The package is designed for hardware engineers and EDA tool developers who need to generate or analyze netlists programmatically rather than by hand. It supports busses for multi-bit signals, properties on objects for metadata (like timing delays), and connectivity introspection. However, the project has been inactive since April 2021 and is no longer maintained, so it carries the risk of incompatibility with newer Python versions or evolving standards.
Use it for:
- Generate circuit netlists programmatically for custom cell libraries or design flows
- Build hierarchical circuit descriptions by composing components and managing pin-to-net connectivity
- Export circuit designs to Verilog format for simulation or synthesis tools
- Analyze and transform existing netlists through flattening, cloning, or uniquification operations
- Attach metadata to circuit elements for downstream processing
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Salamandra is a Python framework for loading, analyzing, generating, and storing electronic circuit netlists through an object-oriented API.
No. While Salamandra is permissively licensed and has no dependencies, the project has been abandoned for nearly 1949 days with no maintenance or updates. The description itself notes that documentation is incomplete and expected to be added—a promise never fulfilled. For active EDA work, choose a maintained alternative; for legacy code already using it, keep the existing version but do not adopt it for new projects.
Install
salamandra on PyPI
pip
pip install salamandrauv
uv add salamandrapoetry
poetry add salamandraInstalling salamandra
Before you install
Installation is straightforward with no runtime dependencies. However, the project has been abandoned since April 2021 with no maintenance activity in nearly 1949 days, so expect no bug fixes or updates.
License in practice
Salamandra is released under the Apache 2.0 permissive license, allowing commercial and private use with minimal restrictions.
Quickstart
pip install salamandra==1.0.1
import salamandra as slm
nmos = slm.Component('nmos')
nmos.add_pin(slm.Pin('source'))
nmos.add_pin(slm.Pin('drain'))
Only Python 3 is supported; requires Python >= 3.5
Verify before relying
- Whether the package works correctly with Python versions beyond 3.5 despite being marked as supporting current versions
- Whether the incomplete documentation mentioned in the description has been addressed since the last release
- Real-world compatibility with modern Verilog export workflows and netlist standards
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.5) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 1,949 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 181,676/month — #10,117 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: salamandra-1.0.1-py3-none-any.whl
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
kfactoryKFactory is a Python framework for designing…
unclear · top 15,000 on PyPI
adafruit-circuitpython-busdeviceProvides I2CDevice and SPIDevice helper classes…
permissive · top 15,000 on PyPI
elvis-lvsElvis extracts connectivity from GDS layout…
unclear · top 15,000 on PyPI
peakrdl-regblockCompiles SystemRDL register descriptions into…
copyleft · top 15,000 on PyPI
edalizeEdalize abstracts the interface to EDA tools…
permissive · top 15,000 on PyPI
lambdalibLambdalib provides technology-agnostic hardware…
permissive · top 15,000 on PyPI
cocotbcocotb is a Python framework for writing…
permissive · top 15,000 on PyPI
schemdrawSchemdraw generates high-quality electrical…
permissive · top 15,000 on PyPI
PySpicePySpice provides a Python interface to Ngspice…
copyleft · top 15,000 on PyPI
tree-sitter-verilogProvides a SystemVerilog grammar parser for…
permissive · top 5,000 on PyPI