Phluxel is a desktop cellular-automata studio. Sketch a pixel grid, write a tiny rule in the Phlux language, and let the GPU evolve it in real time — then export a seamless animated loop in seconds.
// Conway's Life on the green channel LET _n = {COUNTNZ, (-1:1,-1:1).G} - (G > 0) (_n == 3) | (G > 0 & _n == 2) ? G = 255 : G = 0
Draw, script, simulate, and export — without ever leaving the canvas. Built on a tiny rule language and a real-time engine.
Describe how a cell becomes its next self from its neighbors. Channels, math, conditions and scatter — readable in one line, with a cheat sheet, autocomplete and a live preview in the Monaco-powered editor.
Global rules compile to GPU shaders and ping-pong render textures for buttery real-time playback — with toroidal wrapping. Per-cell logic falls back to a precise CPU interpreter automatically.
Drop in PNG, JPG, BMP, animated GIF or WebP as a starting state and let a rule remix it.
One-click GIF with ping-pong for perfect back-and-forth loops, plus PNG sequence, APNG and MP4.
Animate rule parameters over time. Scrub, keyframe, and choreograph evolving simulations.
8 one-click live starters and a library of 29 rule templates to remix — go from blank to animating in a click.
Capture multiple snapshots of a field and step back through deep, non-destructive undo history.
Built on .NET 10 with a native Raylib + Dear ImGui front end. Windows, macOS and Linux — docking panels, custom themes, and a fully rebindable keymap.
No coding needed to start — pick a starter, or build one from scratch. You can have a shareable GIF in about five minutes.
Brush, fill, shapes and an eyedropper on a pixel grid. Or import an image — a few dots is enough.
One line of Phlux says what each cell becomes from its neighbors. Toggle Global to run it everywhere.
Watch it evolve in real time. Step frame-by-frame, tweak speed, and reset to your design anytime.
Save a seamless ping-pong GIF, an MP4, an APNG, or a full PNG sequence. The result is the ad.
Given this cell and its neighbors right now, what should it become next step?
You write that as an assignment to the cell's R G B A channels. The engine applies it to every cell, over and over — and motion emerges.
N S E W, diagonals, relative (dx,dy) or absolute [x,y].COUNTNZ, the ? : ternary, and multi-cell scatter output.// 1 · a glowing decay trail R *= 0.97; G *= 0.97; B *= 0.99 // 2 · a left-to-right gradient R = X / GW * 255 // 3 · Conway's Game of Life (green) LET _n = {COUNTNZ, (-1:1,-1:1).G} - (G > 0) (_n == 3) | (G > 0 & _n == 2) ? G = 255 : G = 0 // 4 · paint a whole cell with a color literal [255, 255, 0, 0] // opaque red
Full reference ships in-app: Help ▸ Phlux Language Reference
Every tile below is a real cellular automaton stepping in real time — the same kind of emergence you'll be authoring in Phluxel.
No subscriptions, no cloud lock-in. Start free, and upgrade when you want bigger grids, the GPU engine and animation export.
All editions are the same download — your license simply unlocks the features. Prices in USD. Available on Steam & itch.io.
Download Phluxel free, paint a few pixels, and write your first rule. Your first seamless loop is about five minutes away.
Also coming to Steam & itch.io · macOS & Linux builds available