Greetings!
For the last couple of months I've been working on a digital circuit simulator.
There is already software like this available, namely "Logisim Evolution" and "Digital", however both of these require a Java runtime and are kinda slow.
So I decided to start from scratch with the following goals:
- High speed parallel simulation
- As lightweight as possible
- Run on both native and WASM
What this isn't: - A general electronics simulation (Gsim only simulates tri-state digital logic)
- A PCB-editor/CAD tool
I have split the projects into two crates: the simulator backend and the UI.
The backend is already in a good state and basically only needs more circuit components to be implemented.
Although if you feel up to it, I'd be grateful for someone to comb through it and check for any soundness issues or possible optimizations. I'm confident in my Rust skills but with stuff this complicated two pairs of eyes see more than one.
You can find the backend here: https://github.com/Artentus/gsim
The UI however is not very far along. I'm not a particularily good UI developer, especially when using Rust.
I've been using egui + drawing the circuit itself directly with wgpu. If anyone has a better solution I'm open for it, as long as it is a Rust solution and works on both native and WASM.
Or if you think this approach is workable just helping me get it functional is also highly appreciated.
You can find the frontend here: https://github.com/Artentus/gsim-gui
