frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Circuit Artist –Circuit simulator with propagation animation and rewind

https://github.com/lets-all-be-stupid-forever/circuit-artist
2•rafinha•3h ago
Hello,

Circuit Artist is a game about drawing digital circuits as pixel art — like MS Paint, but pixels are wires and little triangles are NANDs. Hit play and the simulation runs in real time. It's fully white-box: every wire's state is visible.

I launched it last year with a unit-delay simulation that ran until convergence on each update. It worked, but I realized it had some fundamental problems:

(i) It hid what was actually happening. Players couldn't tell the difference between a ripple carry adder and a look-ahead adder — everything just resolved instantly.

(ii) Design bugs became "game bugs." When players had non-converging wires (like A = not(A)), the game couldn't explain why or where the error was.

(iii) Layout didn't matter. A NAND on one side of the map would instantly propagate to the opposite side, making spatial decisions meaningless. Unit delay probably works better for schematic-based simulators like Logisim, not a layout-focused game like this.

(iv) Propagation visualization couldn't be added on top of the unit-delay engine — there was no notion of direction or distance.

So I rebuilt the engine with variable-delay event-based simulation using an adaptation of Elmore delay. The delay for each wire depends on distance and fanout — longer wires are slower, higher fanout adds delay, branching wires are faster.

For the implementation: I compute Elmore delay over wire trees. Each pixel has resistance and capacitance, with NAND inputs as nodes to account for fanout. For non-tree wire graphs, I build a Dijkstra-based spanning tree (driver as root) and interpolate for edges outside the tree. I calculate the delay for each node and project it back to the image so every pixel has a distance.

This lets me animate propagation with a glow effect during simulation. The shader knows when each wire was triggered, the current time, and the Elmore distance of each pixel, so it resolves state per-pixel in real time.

On top of that:

- Time rewind: the simulation is now delta-based, so players can freeze and scrub backwards to debug. Super useful for cyclic circuits.

- Layers: since timing matters now, I added up to 3 layers. NANDs only go on the bottom layer, upper layers propagate faster (lower capacitance). Lets you route wires above dense NAND areas.

The game has a campaign for learning from scratch, though it's still incomplete and in progress. I'm working toward Steam Workshop support so people can create their own campaigns to teach different concepts or cover more advanced topics.

GitHub (full source): https://github.com/lets-all-be-stupid-forever/circuit-artist

Steam: https://store.steampowered.com/app/3139580/Circuit_Artist/

Show HN: Use Claude Code to Query 600 GB Indexes over Hacker News, ArXiv, etc.

https://exopriors.com/scry
235•Xyra•11h ago•66 comments

Show HN: 22 GB of Hacker News in SQLite

https://hackerbook.dosaygo.com
667•keepamovin•1d ago•201 comments

Show HN: LoongArch Userspace Emulator

https://github.com/libriscv/libloong
35•fwsgonzo•1w ago•11 comments

Show HN: Circuit Artist –Circuit simulator with propagation animation and rewind

https://github.com/lets-all-be-stupid-forever/circuit-artist
2•rafinha•3h ago•0 comments

Show HN: Dockerized benchmark suite for Sharp vs. Lazy-Image (Rust-based)

https://github.com/albert-einshutoin/lazy-image-test
2•einshutoin•3h ago•1 comments

Show HN: Eimi – Turn any information into daily cards

https://eimi.tech
2•xjconlyme•3h ago•0 comments

Show HN: One clean, developer-focused page for every Unicode symbol

https://fontgenerator.design/symbols
191•yarlinghe•6d ago•81 comments

Show HN: Brainrot Translator – Convert corporate speak to Gen Alpha and back

https://brainrottranslator.com
28•todaycompanies•1d ago•8 comments

Show HN: Tidy Baby is a SET game but with words

https://tidy.baby
34•brgross•1d ago•7 comments

Show HN: Stop Claude Code from forgetting everything

https://github.com/mutable-state-inc/ensue-skill
190•austinbaggio•1d ago•222 comments

Show HN: I remade my website in the Sith Lord Theme and I hope it's fun

https://cookie.engineer/index.html
33•cookiengineer•1d ago•13 comments

Show HN: Generate your personal HN recap for 2025

https://hn-2025.userjam.com
15•giladvdn•7h ago•4 comments

Show HN: Aroma: Every TCP Proxy Is Detectable with RTT Fingerprinting

https://github.com/Sakura-sx/Aroma
82•Sakura-sx•5d ago•49 comments

Show HN: See what readers who loved your favorite book/author also loved to read

https://shepherd.com/bboy/2025
129•bwb•2d ago•40 comments

Show HN: My not-for-profit search engine with no ads, no AI, & all DDG bangs

https://nilch.org
198•UnmappedStack•2d ago•75 comments

Show HN: Z80-μLM, a 'Conversational AI' That Fits in 40KB

https://github.com/HarryR/z80ai
500•quesomaster9000•2d ago•117 comments

Show HN: RAMBnB.xyz P2P marketplace for RAM rentals

https://www.rambnb.xyz
27•olivierroy•19h ago•9 comments

Show HN: Replacing my OS process scheduler with an LLM

https://github.com/mprajyothreddy/brainkernel
20•ImPrajyoth•1d ago•11 comments

Show HN: Claude Cognitive – Working memory for Claude Code

https://github.com/GMaN1911/claude-cognitive
8•MirrorEthic•20h ago•3 comments

Show HN: A Claude Code plugin that catch destructive Git and filesystem commands

https://github.com/kenryu42/claude-code-safety-net
58•kenryu•5d ago•66 comments

Show HN: Isit2026yet.com – A single-serving site for the New Year

https://isit2026yet.com/
7•eamongordon•12h ago•2 comments

Show HN: Perfetto2LLM - A tool to pass system traces to an LLM

https://perfetto-to-llm.vercel.app/
3•ak2242•13h ago•0 comments

Show HN: Euclidle – Guess the Coordinates in N‑Dimensional Space

https://euclidle.com/
19•bills-appworks•5d ago•7 comments

Show HN: LLMRouter – first LLM routing library with 300 stars in 24h

https://github.com/ulab-uiuc/LLMRouter
4•tao2024•14h ago•1 comments

Show HN: Spacelist, a TUI for Aerospace window manager

https://github.com/magicmark/spacelist
42•markl42•4d ago•6 comments

Show HN: Client-side encrypted AI detector using model ensembling

https://veredictlabs.com
4•oscarzdev•16h ago•0 comments

Show HN: Tetris Time

https://tetris-time.koenvangilst.nl/?mode=countdown&to=2026-01-01T00:00:00.000Z&speed=3
13•vnglst•1d ago•3 comments

Show HN: Per-instance TSP Solver with No Pre-training (1.66% gap on d1291)

20•jivaprime•2d ago•3 comments

Show HN: Xcc700: Self-hosting mini C compiler for ESP32 (Xtensa) in 700 lines

https://github.com/valdanylchuk/xcc700
154•isitcontent•5d ago•36 comments

Show HN: Zs3 – S3 server in ~1K lines of Zig, 250KB binary, zero dependencies

https://github.com/Lulzx/zs3
34•lulzx•2d ago•1 comments