A terminal DOOM fire animation and ASCII art CLI written in Go, built with Charm's Bubble Tea and Lip Gloss TUI libraries.
For the best animation experience, use a GPU-accelerated terminal emulator such as Alacritty, Kitty, or similar. While not required, these terminals can provide smoother and more vibrant visuals for the flame animation.
- Real-time 2D fire simulation based on the classic DOOM fire effect
- Colorful, animated terminal output for modern terminal emulators
- Hot-resizable output
- Hardwired 30 FPS ASCII rendering up to 4K (3829x700 with kitty)
git clone https://github.com/erik-adelbert/flame.git
cd flamemake runBuild the executable:
make build
./bin/flamego install github.com/erik-adelbert/flame/cmd/flame@latestmake test
make benchgo run ./cmd/flame/main.goBuild a binary:
mkdir -p bin
go build -o bin/flame ./cmd/flame/main.go
./bin/flamecmd/flame/— CLI entry point (mainpackage)flame/— Core simulation and rendering logic
- The model simulates fire by propagating heat values upward and mapping them to characters/colors.
- Adjust the palette or rules in
flame/model.goto change the flame's appearance. - Change grid size or simulation parameters as needed.
MIT. See LICENSE.
Erik Adelbert
Note: I don't need to vibe my code. This project is crafted.
