JellyDazzle

JellyDazzle

A DAZZLE.EXE homage for Apple and Android, built with AI-guided coding — 24 engine modes in hand-written ARM64 assembly, 642 patterns in C. It listens to whatever is playing — on your Mac, iPhone, iPad or Android phone and tablet — and paints to it: never the same pattern, never the same colours.
3.6.6 — four new fractals, and see the beat · on the App Store for Mac, iPhone & iPad · Android coming soon · ARM64 · MIT

What it looks like

rays through a mirror-tile transform
A05 — rays · mirror-tile (assembly)
fireworks accumulator
A23 — fireworks (assembly accumulator)
lightning mandala
476 — lightning mandala
pinwheel spiral
007 — pinwheel spiral
moire silk
019 — moiré silk
tesla coil
480 — tesla coil
Play music first
JellyDazzle is audio-reactive — put something on before you watch it. Anything playing on your Mac will do: a record, a film, a livestream. On macOS 14.2+ it listens to the system output, so it follows whatever app is making the sound. In silence it still runs, but on internal clocks — and you are seeing maybe half of what it does.
Nothing on hand? Play this. “And I Need Ur Love” by The Rat’s Asses, featuring the man who wrote JellyDazzle. Free, no account — press play, then open the app.
Also on Spotify — free accounts only get a 30-second preview there, so the video is the whole song.
Signed by Apple
This download is code-signed as Developer ID Application: LIBCSYSTEMS LLC and notarised by Apple, with the ticket stapled so it verifies offline. It installs and opens with no warnings — no “cannot verify”, no right-click trick. On the Mac App Store since October 8, 2026.

How a frame is built

Up to four layers run at once, bottom to top: a ground fills the screen, a field covers most of it with gaps, a figure drops distinct shapes over that, and a spark adds glints. They blend by brightness, so dark parts of an upper layer let the one below show through.

Each layer takes a turn of its own length, then a new routine is drawn from a shuffled bag and fades in. Timing is random by design — never a fixed loop. At startup the engine measures every routine and assigns it a layer by how much of the screen it actually covers.

24
engine modes in hand-written ARM64 assembly
642
C pattern plug-ins in the shipping build
180
palette schemes, interpolated in OKLab

Where things stand

A few people hit real problems with the earlier downloads. They are fixed, and it is worth being straight about what they were.

Now on iPhone and iPad

The same engine — the same assembly core and all 666 routines — runs on iPhone and iPad. Version 3.6.6 — four new fractals, and see the beat — is on the App Store now, the same release as the Mac. Put a song on in Spotify or Apple Music, open JellyDazzle and set the phone down: your music keeps playing at full volume while JellyDazzle listens through the microphone and paints to it.

Your own pictures, the feature announced here before, is on hold — the phones came first. Get it on the App Store, or follow along at github.com/LIBCSYS/JellyDazzle.

Coming soon to Android

The same engine — the same assembly core and all 666 routines — is coming to Android phones and tablets. JellyDazzle for Android is with Google Play for review now. Like the iPhone, it listens to the music around it through the microphone, draws a softer picture on battery and goes full when you plug it in. Free, no ads, and it doesn’t even ask for internet access.

The Google Play button goes up here the day it is live.

What's new

Build it yourself

git clone https://github.com/LIBCSYS/JellyDazzle.git
cd JellyDazzle
make          # build
make run      # build and launch
make app      # signed self-contained .app

Needs only the Xcode command line tools (xcode-select --install). SDL2 ships in the repository, built against the minimum supported macOS — deliberately, because a Homebrew SDL is compiled for whichever macOS the build machine happens to run and silently pins the finished app to it. Apple Silicon only; the 24 engine modes are hand-written ARM64 assembly (the 642 patterns and the compositor are C). macOS asks for microphone permission on first launch so the visuals can move with your music — they run on internal clocks without it. First launch can take 30–60 seconds while it probes audio devices; it is working, not hung.

In tribute

JellyDazzle exists because of DAZZLE.EXE, written by James R. Shiflett of Houston, Texas. He wrote it at night — “a sort of therapy,” he called it — while his day job was administrative work around an NEC SX-2 supercomputer at the Houston Advanced Research Center.

MicroTronics released it as shareware in 1990 for $15. Road Scholar Software published it at retail as Razzle Dazzle in 1992, and by 1993 it was earning more in shareware registrations each week than most people made in a month. It went head to head with After Dark, and in 1993 its visuals became a 45-minute art film scored by Jonn Serrie.

Its source was never released. This is not a port and not a reverse engineering — nothing was disassembled. It is an homage written from scratch, chasing the same feeling: cheap geometry, mirrored symmetry, and colour that moves because the palette moves rather than because the pixels do.

Shiflett’s exit splash read:
“Our Creator, evidenced by our creativity.”

Read the full story →