Life & fun · alternatives · 2026
24 alternatives to TTF-DOOM – A raycaster running inside TrueType font hinting
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:…
TTF-DOOM is a raycasting engine built entirely within TrueType font hinting bytecode, a Turing-complete virtual machine designed to adjust glyph shapes. The glyph "A" contains 16 vertical bars that are repositioned to… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes.
- 1

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 →
- 2

During the hype of llama.ttf months ago, I was speculating the potential of WASM shaper for even crazier purpose, one that fitter to a font shaper's duty -- to synthesize font at runtime. This project as proof-of-concept implements a synthesizer that generates and rasterizes handwriting-style font, backed by a super-lightweight RNN model (~14MiB).
2024 · github.com · its alternatives →
- 3QC
In the "Libre Barcode Project" discussion yesterday, 1bpp asked: "Is anyone willing to sacrifice their sanity for the sake of implementing a QR renderer as TTF hinting code?" Yes. I had some tokens to burn and was curious... turns out, it's possible. This was put together by a mix of Gemini, GPT, and Claude (depending on which usage limits kept running out).
Jun 2026 · qr.jim.sh · its alternatives →
- 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

2021 · coderelay.io · its alternatives →
- 6

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 →
- 7

2021 · codingfont.com · its alternatives →
- 8KR
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…
Nov 2025 · mikeayles.com · its alternatives →
- 9CS
I built this many years ago to try out rendering images in textboxes, using braille characters as groups of 8 pixels. You can try different fonts to see how the spacing changes too.
2024 · px.neocities.org · its alternatives →
- 10

It's been closed source for a long time while I worked on it on and off as a hobby research project, but yesterday the repo was made public for the first time under the MPL 2.0 license. A feature reel showing its capabilities can be found here: https://ktstephano.github.io/rendering/stratusgfx/feature_re... A technical breakdown of a single frame can be found here: https://ktstephano.github.io/rendering/stratusgfx/frame_anal... It's still in a very beta state (bugs and instability expected), but I felt like it was a good time to make it…
2023 · github.com · its alternatives →
- 11

Render 3D models (OBJ, glTF, GLB, STL, .vox) as ASCII art — in the browser, in React or Vue, or straight in your terminal. A three.js-style API with no WebGL and no canvas: just text in a single <pre>.
Jun 2026 · glyphcss.com · its alternatives →
- 12KB
Karektar is a React/TS app for building exportable bitmap fonts from custom glyph sets. You can submit your own input string, and the app will generate the gallery of unique glyphs. Build your own designs using the various tools available, then export it to an OTF format when you're done. This is my first front-end project, and one I picked up to learn React. I'd love to hear any feedback, especially on usability and additional features you'd like to see. Cheers!
2023 · karektar.newtrino.ink · its alternatives →
- 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

Pseudo-3D shooter written completely in gawk using raycasting technique - TheMozg/awk-raycaster
2016 · github.com · its alternatives →
- 15

A Wolfenstein3D-like raycaster made in Windows Batch. - nTh0rn/batch-raycaster
2025 · github.com · its alternatives →
- 16

A raycaster that renders to random dot stereogram - ammonb/stereogram-raycaster
2019 · github.com · its alternatives →
- 17IM
I've posted this game here before, hopefully a repost is fine as the game has changed quite a bit (improved AI, improved mapeditor, much quicker gameplay, etc). Game is based on JavaScript/Canvas and WebSockets. On the browser side the map is pre-rendered (as a background image), just the mobile units/buildings and animations are dynamically rendered. The lobby server is made in node.js, but the game server is C++ for performance reasons (mainly the pathfinding). I found the C++ WebSocket libraries out there to be too difficult to use so I made my own based on the rfc. Overall I…
2022 · battle-of-flags.com · its alternatives →
- 18DI
2024 · chrisdalke.com · its alternatives →
- 19

2016 · wdobbie.com · its alternatives →
- 20

Playground for the fire effect from DOOM. Really simple algorithm and all experiments are welcome! - filipedeschamps/doom-fire-algorithm
2019 · github.com · its alternatives →
- 21

Brutalita is an experimental font and font editor, edit in your browser and download OTF.
2022 · brutalita.com · its alternatives →
- 22

A minimalist three-dimensional coding environment. Control 8x8x8 dots with a single JavaScript function.
2021 · doersino.github.io · its alternatives →
- 23

I always believe in using what one makes, which is unfortunate because I made Monocraft. For the past year I've been stuck looking at those pixels while I code, so over the weekend I tried my hand at making a version of Monocraft that was more legible. Introducing Miracode, a Minecraft programming font that is actually usable! Using a custom algorithm, I've converted adjacent pixels from the original font into strokes, which allow for a more smooth look while maintaining that Minecraft-y look. Give it a try and let me know what you think!
2024 · github.com · its alternatives →
- 24

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 →
Also compare
- I made a Doom-like game fit inside a QR code alternatives
- Handwriter.ttf – Handwriting Synthesis with Harfbuzz WASM alternatives
- QR code renderer in a TrueType font alternatives
- Doom (1993) in a PDF alternatives
- Video Game in a Font alternatives
- A Marble Madness-inspired WebGL game we built for Netlify alternatives
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 →