nowfound

Dev tools · alternatives · 2026

KR

24 alternatives to KiDoom – Running DOOM on PCB Traces

I got DOOM running in KiCad by rendering it with PCB traces and footprints instead of pixels. Walls are rendered as PCB_TRACK traces, and entities (enemies, items, player) are actual component footprints - SOT-23 for small items, SOIC-8 for decorations, QFP-64 for enemies and the player. How I did it: Started by patching DOOM's source code to extract vector data directly from the engine. Instead of trying to render 64,000 pixels (which would be impossibly slow), I grab the geometry DOOM already calculates internally - the drawsegs[] array for walls and vissprites[] for entities. Added a…

KiDoom renders the classic game DOOM within KiCad's PCB design software by converting game geometry into circuit board elements. Walls appear as PCB traces while enemies, items, and the player are represented as… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes.

  1. 1

    A bloody cute 2D DOOM demake

    2019 · 2doom.itch.io · its alternatives →

  2. 2

    I sometimes pick up random projects just because I can, this was one of those times. I made it as a week long project a while back this year but never shared here, so thought to go for it haha. I created a game inspired by Doom and the backrooms called The Backdooms under 2.4kb in minified html. (for reference, this entire post would be around 1.8kB haha) I had to use a not popular way of using GZip with Zlib headers (had to write my own script for compressing it, also in the repo) to eventually convert it a size 40 QR code that works right in your browser using Decompressionstream API. This…

    2025 · github.com · its alternatives →

  3. 3OC

    2024 · ludocode.com · its alternatives →

  4. 4D1

    I made a Doom source port that runs within a PDF file. I was inspired by the recent HN post about Tetris in a PDF (https://news.ycombinator.com/item?id=42645218) and I wondered if I could get Doom to run using a similar method. It turns out that old versions of Emscripten can compile C to asm.js code that will happily run inside the limited JS runtime of the PDF engine. I used the doomgeneric (https://github.com/ozkl/doomgeneric) fork of the original Doom source, as that made writing the IO fairly easy. All I had to do was implement a framebuffer and…

    2025 · doompdf.pages.dev · its alternatives →

  5. 5

    Hello HN! We’re a small creative studio specializing in real-time 3D experiences. Netlify approached us to design and build an interactive experience to celebrate reaching 5 million developers. Inspired by the classic game Marble Madness, we created a gamified experience where users control a ball through playful, interactive levels. The goal was to blend marketing content with the look and feel of a game to engage users. The app is built with Three.js [1], using our custom render pipeline and shaders, and uses Rapier for physics simulation [2]. The 2D content is overlaid on the WebGL view…

    2024 · 5-million-devs.netlify.com · its alternatives →

  6. 6DI

    2024 · chrisdalke.com · its alternatives →

  7. 7

    Creator here. I built ChartGPU because I kept hitting the same wall: charting libraries that claim to be "fast" but choke past 100K data points. The core insight: Canvas2D is fundamentally CPU-bound. Even WebGL chart libraries still do most computation on the CPU. So I moved everything to the GPU via WebGPU: - LTTB downsampling runs as a compute shader - Hit-testing for tooltips/hover is GPU-accelerated - Rendering uses instanced draws (one draw call per series) The result: 1M points at 60fps with smooth zoom/pan. Live demo:…

    Jan 2026 · github.com · its alternatives →

  8. 8

    We ported pbrt-v4 to Julia and built it into a Makie backend. Any Makie plot can now be rendered with physically-based path tracing. Julia compiles user-defined physics directly into GPU kernels, so anyone can extend the ray tracer with new materials and media - a black hole with gravitational lensing is ~200 lines of Julia. Runs on AMD, NVIDIA, and CPU via KernelAbstractions.jl, with Metal coming soon. Demo scenes: github.com/SimonDanisch/RayDemo

    Feb 2026 · makie.org · its alternatives →

  9. 9

    This is a little toy project of mine that lets you simulate digital logic graphs. It was inspired by Minecraft's Redstone and the Piet esolang. It's got some serious drawbacks-- you write circuits as PNGs and simulate them with a Python interface. It's slow to run and slow to experiment with. And it is certainly difficult to use for people with any kind of color blindness. But despite that, I hope this can still be a fun toy!

    2022 · github.com · its alternatives →

  10. 10

    Hi HN, I’ve been working on Gore – a port of the classic Doom engine written in pure Go, based on a ccgo C-to-Go translation of Doom Generic. It loads original WAD files, uses a software renderer (no SDL or CGO, or Go dependencies outside the standard library). Still has a bit of unsafe code that I'm trying to get rid of, and various other caveats. In the examples is a terminal-based renderer, which is entertaining, even though it's very hard to play with terminal-style input/output. The goal is a clean, cross-platform, Go-native take on the Doom engine – fun to hack on, easy to read,…

    2025 · github.com · its alternatives →

  11. 11

    A path tracer written in Go. Contribute to fogleman/pt development by creating an account on GitHub.

    2015 · github.com · its alternatives →

  12. 12

    A Simple Unix-like operating system. Contribute to ozkl/soso development by creating an account on GitHub.

    2019 · github.com · its alternatives →

  13. 13

    This is a GPU "software" raytracer (i.e. using manual ray-scene intersections and not RTX) written using the WebGPU API that renders glTF scenes. It supports many materials, textures, material & normal mapping, and heavily relies on multiple importance sampling to speed up convergence.

    2024 · github.com · its alternatives →

  14. 14

    TrueType fonts have a hinting VM that grid-fits glyphs. It has a stack, storage area, conditionals, function calls, and it turns out it's Turing-complete. So I built a raycasting engine in the hinting bytecode. The glyph "A" in the font has 16 vertical bar contours. The hinting program reads player coordinates from font variation axes via GETVARIATION, does DDA ray marching against a tile map in the storage area, and repositions bar heights with SCFS. It ends up looking like a crude Wolfenstein-style view. Small visuzlization:…

    Apr 2026 · github.com · its alternatives →

  15. 15GB

    Hey HN, Over the past ~1.5 years, I built an open-source FPGA retro emulation handheld that can play Game Boy, Game Boy Color, and Game Boy Advance cartridges. To my knowledge, there isn't an existing open-source FPGA emulator that can play physical cartridges like this. One of my main goals was to do all of the pieces myself, and be able to understand every component of it, so I designed my own PCB, wrote the firmware, wrote a Game Boy and Game Boy Advance emulator for the FPGA (using the Chisel HDL), and designed a 3D-printed case. I detailed the design and development process in the…

    2025 · eli.lipsitz.net · its alternatives →

  16. 16CP

    Hi HN! 2d spritesheets for game development are often distributed as a PNG image, sometimes with a separate JSON or XML metadata document describing the layout, including any animation sequences within the sheet. Sometimes there is no metadata document and you have to work it out and manually write custom code to chop up the spritesheet and reference the sprites you want. I think it would be good if it became standard practice to distribute spritesheet PNGs with the metadata inline inside a PNG "chunk" so the whole thing is self-contained. That way artists can just distribute one file, and…

    2019 · mccormick.cx · its alternatives →

  17. 17

    Demo: https://www.youtube.com/watch?v=f5uygzEmdLw Hi HN, I built a RISC-V emulator that implements the RV32IM instruction set and a minimal syscall interface to run DOOM. A few weeks ago, I got my first output with a simple hello world assembly program. Since then I have been working tirelessly to get DOOM to run. I needed to figure out how to run C programs first, and came across newlib, which allows the underlying environment to implement the syscall stubs one by one until the programs run. I have also added ELF loading, but currently only a single `PT_LOAD` segment is…

    May 2026 · github.com · its alternatives →

  18. 18

    As part of the annual JS13K games challenge, I've put together a pretty large (but small-in-code) Metroidvania game that fits in just 13KB of compressed Javascript. The source is available here: https://github.com/arikwex/infernal-sigil NOTE: the current head of the main branch is at 13.6KB due to quality of life patches. The legit 13KB version is tagged in github. Useful hacks: - Using Roadroller (https://github.com/lifthrasiir/roadroller) for compression - Compressing the map data as grayscale PNG paired with some code generation. - Using procedural…

    2022 · arineonshark.itch.io · its alternatives →

  19. 19

    Turn photos into game assets

    Jun 2026 · pixel-forge.net · its alternatives →

  20. 20

    I tried to build AI game animation generator last year ( https://news.ycombinator.com/item?id=40395221), a lot of people were interested, but it failed, mainly because the technology was not good enough. 1 year passed, there were a lot of developments in video/image generation. I tried it again, I think it works super well now. Actually beyond my expectation. You can generate all kinds of game character animation sprites with only 1 image. 1, upload your image of your character 2, choose the action you want 3, generate! Support basic actions like Run, Jump, Punch and…

    2025 · godmodeai.cloud · its alternatives →

  21. 21

    I’ve been experimenting with Rust lately and wanted a project that would help me explore some of its lower-level and performance-oriented features. Inspired by Sebastian Lague’s videos, I decided to implement my own ray tracer from scratch. The initial goal was just to render a simple 3D scene in the browser at a reasonable frame rate. It evolved into a small renderer that can: • Run locally or on the web using wgpu and WebAssembly • Perform mesh rendering with a Bounding Volume Hierarchy (BVH) for acceleration • Simulate both direct and indirect illumination for photorealistic results • Be…

    Nov 2025 · github.com · its alternatives →

  22. 22TP

    This is the inevitable post after jeff_harris released restful-doom https://news.ycombinator.com/item?id=14919534 twitch-plays-doom is a Python Twitch IRC->restful-doom proxy to control doomguy with a staggering 8 second delay. The project was Saturday night's 'I wonder if I can make this work' session. Since it's been live there has been a team of four successfully make it to half way through E01M01. I've since added godmode to the chat (you can guess the command). This was fun, hope others get some enjoyment out of it. Twitch Stream/Chat…

    2017 · its alternatives →

  23. 23

    Procedural Sprite Generator

    2018 · crysoftware.itch.io · its alternatives →

  24. 24IM

    I was fascinated by this [0] and this video [1]. After many struggles, I finally built this app that traces images using circles similar to what these videos had shown. The most challenging part (to me) is to find a way to convert images to vector lines. I had tried Potrace, but its output is not suitable for my use case: too many small elements share the same border. Potrace's goal is to represent the original image faithfully using vector lines. But I want to trace the image edges. After searching and trying some Potrace alternatives in vain, I finally found my keyword. Surprisingly (to…

    2022 · phqb.github.io · its alternatives →

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →