cellar

cellar

A fast, unbounded cellular-automata editor. Draw a pattern, pick a rule, and run it on the GPU, from Conway's Life to Lenia and reaction-diffusion.

gen0 pop0 LifeB3/S23 drag to draw
cellar running Gray-Scott stripes, with the pattern library, rule presets and statistics docked around the world

Every rule, one world

Each family runs on the same unbounded world, on the CPU or the GPU, and reads the rule strings Golly and LifeWiki write.

A Gosper glider gun firing a stream of gliders
B3/S23

Life and its relatives: Life-like, Generations, isotropic non-totalistic and Larger-than-Life rules, with weighted kernels up to radius 16.

Life-like
B36/S23
Larger than Life
R5,C0,M1,S34..58,B34..45,NM
Generations
B2/S/C3
Isotropic
B2-a/S12
Rule tables
WireWorld
Lenia
R=13,T=10,b=[1],m=0.15,s=0.015
Reaction-diffusion
F=0.029,k=0.057
Bounded grids
B3/S23:T100,100

Built for big runs

Written in Mach on the boom engine, cellar keeps the work on the GPU wherever it can.

Engine

A sparse pool of 64 by 64 chunks grows in any direction, stepped by compute shaders and drawn straight from the GPU's buffers. Without a capable GPU, every CPU core steps it instead.

HashLife

Gosper's algorithm steps a power of two generations at a time, taking a glider gun to generation 230 in a moment.

Editor

Draw, erase, stamp and select, with walls, drawn boundaries and undo across every change. Panels dock, tab and float.

Patterns

About three hundred classic Life patterns, Lenia creatures and reaction-diffusion seeds, browsed by category or searched by name.

Files

Opens RLE, plaintext, Life 1.05 and 1.06, Macrocell and Golly's .rule tables, and copies RLE ready to paste into LifeWiki or Golly.

Headless

cellar run steps a pattern with no window, and --bench measures each engine.

Download

Free and MIT licensed. cellar needs a Vulkan 1.2 GPU, through MoltenVK on macOS.

# open the editor, or a pattern, world or .rule file
cellar
cellar gun.rle

# run headless and write the result
cellar run gun.rle --gens 1000 --out gun.mc

# measure an engine
cellar --bench gpu dense
Space
play / pause
S
step
R
randomize
D E T V
draw, erase, stamp, select
Ctrl Z
undo
H
every key

The guide covers every rule family, file format and option. To build from source, see the README.