# CircuitCraft: a Rust desktop circuit editor with ngspice simulation

**URL:** <https://users.rust-lang.org/t/circuitcraft-a-rust-desktop-circuit-editor-with-ngspice-simulation/143114>\
**Category:** announcements\
**Created:** [October 18, 2026, 8:11am UTC](https://users.rust-lang.org/t/circuitcraft-a-rust-desktop-circuit-editor-with-ngspice-simulation/143114 "2026-10-18T08:11:56Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Berserk-hub150](https://sea1.discourse-cdn.com/flex019/user_avatar/users.rust-lang.org/berserk-hub150/32/54387_2.png) [@Berserk-hub150](https://users.rust-lang.org/u/Berserk-hub150)\
**Post date:** [October 18, 2026, 8:11am UTC](https://users.rust-lang.org/t/circuitcraft-a-rust-desktop-circuit-editor-with-ngspice-simulation/143114/1 "2026-10-18T08:11:56Z")

</div>

Hi everyone! I’m developing CircuitCraft, an open-source desktop application for drawing circuits, running simulations and designing simple PCBs.

The application is written in Rust, with ngspice providing the simulation engine.

The current version includes:

- Schematic editing and hierarchical circuits.

- AC, DC and transient simulations with waveform plots.

- PCB routing, a 3D preview and Gerber/Excellon export.

It’s still an early project: the component library is limited, the autorouter can leave connections unrouted, and the 3D component shapes are approximate.

Source code, screenshots and getting-started guide:

> **[GitHub - Berserk-hub150/CircuitCraft](https://github.com/Berserk-hub150/CircuitCraft)**
>
> Contribute to Berserk-hub150/CircuitCraft development by creating an account on GitHub.

Windows release:

> **[Release CircuitCraft 0.3.0 — routing, hierarchy and PCB 3D ·...](https://github.com/Berserk-hub150/CircuitCraft/releases/tag/v0.3.0)**
>
> CircuitCraft 0.3.0
> Adds three engineering workflows to the existing Rust desktop editor:
> 
> Bounded two-layer A\* autorouter with exact pad endpoints, copper/edge clearance, plated vias, preservation ...

I’d appreciate feedback on the editing workflow and ngspice integration. Small example circuits that reveal bugs would also be very helpful!
