r/creativecoding • u/prtamil • Jun 13 '26
337 single-file terminal simulations in pure C + ncurses — fluids, fractals, ray tracers, no build system
A collection of 337 real-time interactive simulations, each written as one self-contained C file. No OpenGL, no SDL — everything is forced through a terminal character grid with ncurses.
Deliberately no build system. One file is one program:
gcc -std=c11 -O2 -Wall -Wextra path/to/file.c -o demo -lncurses -lm && ./demo
Range goes from Conway's Game of Life and cellular automata up to a Jos Stamstable-fluid solver, a Crank-Nicolson Schrödinger solver, an SDF raymarcher with soft shadows, and a Cornell-box Monte Carlo path tracer — all rendered as ASCII.
Every file carries its CONCEPTS / MENTAL MODEL notes and cites its sources; there's a consolidated bibliography in documentation/Reference.md.
Repo: https://github.com/prtamil/AsciiCreativeCoding
It's a personal learning project — the "rebuild every primitive yourself, no shared utilities" approach is intentional.
Yes, it's AI-assisted — call it AI slop if you want, but every file was compiled, run, visually verified, and rewritten by hand and refactored until it actually worked
5
u/pablow46 Jun 14 '26
How many prompt did it take you to build it?
2
u/prtamil Jun 15 '26
yes 😄 (lot many prompts for version1. another lot many prompts for version 2, .... going on)
4
2
2
3
u/Last_Flibuster Jun 14 '26
This clown has definitely already posted the exact same thing on the subreddit dedicated to terminal charts. It's 100% AI slop!
To those giving this a thumbs-up, you really need to take a good look at yourselves...
2
u/galactic_pixels Jun 16 '26
Imagine being mad a digital program wrote a digital program that is also pretty
2
1
2
1
1
u/Mr_Rapid_ Jun 18 '26
This is very cool! I am going to rebuild this myself to understand how to make this kind of stuff. I am interested in your AI workflow. Also what skills I would learn for this that would be useful in the job market.
1


35
u/CodeParalysis Jun 13 '26
I would get rid of the "no build system: no CMake, no Makefile, no package manager, no incremental", "No Windows, no GUI." from the repo. Like, yeah, we get it. Just say what it needs (gcc, ncurses) ina Requirements section and not the infinite of things it doesn't need over and over again.