Skip to content
refs
REF-2869Source onlineBlueprint rev 01

A fishbowl assembled from code-drawn mosaic tiles

An 80-second, wordless mosaic film builds a fishbowl from darkness, turns day to night, then sends its fish beyond the rim.

Maker @dfeinitionOriginal post ↗
Cut timeline · 1 shots01:20
00:0000:1000:2000:3000:4000:5001:0001:1001:20

Starter prompt / by Refs

The creator shared no short prompt. This is ours for making a film like it with Claude.

Compose an 80-second animated mosaic in one HTML canvas file, built from roughly 13,000 small square tiles that code draws and moves, with no image files. Open in near-darkness on a few glowing tiles, let a starry night sky assemble, mirror the stars in still water, then let those reflections hatch into a school of tiny fish that swim into a round bowl. Give each tile a slight bevel and glint, add a slow ambient score, and export 1080×1080 frames with ffmpeg.

Field notes / why it works

A pinprick at 0:00.5 becomes warm tile fragments by 0:02.5, delaying recognition until the fishbowl resolves around 0:08. The uninterrupted 80-second scene renews interest through a day-to-night change near 0:19, a boundary crossing at 0:49–0:55, and a final gold emblem near 1:16.

01

Plate 01 / The format in one breath

A silent, square art film lets thousands of individually drawn tiles assemble a tiny world from darkness. The promise is visual: the viewer first wonders what the scattered light will become, then stays for a change of setting, a physical escape, and a final image that condenses the story into a symbol.

Why it works

  • The first visible mark is tiny at 0:00.5, and warm fragments only identify a possible subject around 0:02.5–0:03.8. That controlled reveal creates an open loop without text.
  • The same one-shot composition keeps changing scale and state: a complete fishbowl tableau arrives around 0:07.6–0:09.2, turns from warm daylight to indigo night around 0:19, and moves closer at 0:23–0:45.
  • At 0:49–0:55 the fish crosses the bowl rim toward a bright disc; at 0:57 and 1:01 the scene answers with luminous fragments, followed by a simple gold emblem around 1:16. These are distinct payoffs inside an 80-second continuous shot.
02

Plate 02 / Format card

Platform · aspect · lengthX · square 1:1 · 720×720 source · 80.0 seconds at 30 fps
Pace1 continuous shot, 0 confirmed cuts/min, 80-second average shot; 5 detected internal step changes (3.8/min). Twelve rapid visual changes were flagged as uncertain cuts, but the sheets show continuous animation.
Script0 spoken words; story carried by image and music
VoiceNone; no people on screen
On screen100% procedural mosaic animation, fixed square stage with animated tiles and changing apparent scale
CaptionsNone; no visible in-video typography
SoundTonal, music-like bed; about −16.6 LUFS integrated, −2.4 dBFS true peak. Estimated 144 BPM has low confidence.
Structure6 visual beats: spark, assembly, time shift, exploration, boundary break, emblem; no call to action

Pro / 13 plates + recipe

The first plates are open. The full dissection is Pro.

Get the timed shots, type and sound specs, and the runnable recipe.

Open the full blueprint
  1. Plate 03 / The hook, frame by frame (first 3 seconds)Pro
  2. Plate 04 / Structure (beat sheet)Pro
  3. Plate 05 / Shot grammarPro
  4. Plate 06 / Visual style guidePro
  5. Plate 07 / Voice and deliveryPro
  6. Plate 08 / Sound designPro
  7. Plate 09 / PackagingPro
  8. Plate 10 / Script templatePro
  9. Plate 11 / Production planPro
  10. Plate 12 / PromptsPro
  11. Plate 13 / Edit recipePro
  12. Plate 14 / QA checklistPro
  13. Plate 15 / Make it yoursPro
  14. Recipe / runnable promptPro