Eitri
I'm building Eitri as a small, modern VHDL workspace for my school lab assignments.
I wanted to work at home without installing a 30–40 GB Vivado setup full of features I'd never need just to learn VHDL. I couldn't find an alternative that felt both complete enough and modern enough for what I wanted, so I started making my own.
With Eitri, I can write designs and testbenches, reuse components, simulate signals, and see how my code becomes a circuit all in one app. It uses PySide6 for the interface, GHDL for VHDL simulation and synthesis, and Yosys with netlistsvg for circuit diagrams. My focus is learning and experimenting with VHDL, not replacing a complete FPGA implementation toolchain.
A look inside
These screenshots show my 4-bit full adder, built from four 1-bit adders.
Write designs and testbenches
Simulate and inspect waveforms
View component connections or expand them into logic gates
Running Eitri
Install the wheel matching your platform (or, once published, pip install eitri-hdl). Start the application with eitri or:
python -m eitri
Editor guide · Simulation and circuit tools · GPL-3.0-or-later license
Contributing to the app
See docs/CONTRIBUTING.md for a map of the UI modules,
signal flow, and where to add controls or change behavior. Start with
src/eitri/ui/window.py for the overall composition.
Metadata
Release files for eitri-hdl 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| eitri_hdl-0.1.0-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| eitri_hdl-0.1.0-py3-none-manylinux_2_34_x86_64.manylinux_2_35_x86_64.whl | Python 3 | none | Linux glibc 2.35+ x86-64, Linux glibc 2.34+ x86-64 | Details |
| eitri_hdl-0.1.0-py3-none-macosx_15_0_arm64.whl | Python 3 | none | macOS 15.0+ ARM64 | Details |
Total release size: 89.5 MB
Release files / eitri_hdl-0.1.0-py3-none-win_amd64.whl
| Download URL | eitri_hdl-0.1.0-py3-none-win_amd64.whl |
|---|---|
| Size | 28.7 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
68649ca3908036ceb815bb66618801a72ca3a18d0e5a4955fcfc0a8ff0695666
|
|
BLAKE2b-256 checksum How to use checksums |
98bf5ac87623810402ffc667f6de95342e53587421cf9fdd6280a87e5351617b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / eitri_hdl-0.1.0-py3-none-manylinux_2_34_x86_64.manylinux_2_35_x86_64.whl
| Download URL | eitri_hdl-0.1.0-py3-none-manylinux_2_34_x86_64.manylinux_2_35_x86_64.whl |
|---|---|
| Size | 27.7 MB |
| Tags | Linux glibc 2.34+ x86-64 Linux glibc 2.35+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
7e7303fe0636ce339c7caab090eda648b66ab5dcad172e5a74292f67a47e3f7b
|
|
BLAKE2b-256 checksum How to use checksums |
2fc787b15441886ce5426389d34c8a96a5dd5155b7bd0c2982040bf0b55a6b5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / eitri_hdl-0.1.0-py3-none-macosx_15_0_arm64.whl
| Download URL | eitri_hdl-0.1.0-py3-none-macosx_15_0_arm64.whl |
|---|---|
| Size | 33.0 MB |
| Tags | Python 3 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a2bafa783d37c3631909545e3b3bcc311c733f54768321a2a8fcc25749b84cc1
|
|
BLAKE2b-256 checksum How to use checksums |
c1b71448f48c73dc401b0b85095e023fe5f80acd0ae57c2c4c3edb7a5475fc33
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logSecurity for eitri-hdl 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 3 files in this release have been uploaded with provenance metadata.
Attestation for eitri_hdl-0.1.0-py3-none-win_amd64.whl
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.