Dim is a creative coding environment for modern terminals on macOS.
I wanted to make terminal environment similar to P5js or shadertoy, and also learn about how graphics workloads work on macOS. Shaders are written as compute shaders in Metal.
Dim uses Zig, Swift, and Metal. Zig interops with Swift+Metal code to dispatch compute shaders that draw 2D graphics to a framebuffer. Zig CPU code draws the framebuffer to terminal.
# Note: only works on macOS
zig build dim -- ./shaders/voro.metal # runs the voronoi noise example shader


