Skip to the story
The Long Readinternet.com.im

A long read · Studio & Tools · Design

DMT makes chance repeatable

A generative art lab with forty-nine composition algorithms, a seed that replays any piece, and a recorder that asks for 60 Mbps. We counted its tables and set it beside Silk and Hydra.

By the LABS editorsTested 27 September 2026, 19:58–20:06 UTCA 4-minute read862 words

The DMT page on labs.llc: rows of mode buttons and a seed field above a black canvas filled with a grid of small American flags and orange arrow shapes.
PlateDMT on labs.llc, captured from build 537 for this review.

Chapter one · What it is

Pictures you can steer and keep

DMT is a procedural geometry lab on labs.llc. Shapes are arranged on a canvas by one of forty-nine composition algorithms; you can let it run, steer it, freeze a moment, share a preset as a link, or record the result as video. Some modes react to a microphone.

It is aimed at visual artists, VJs and designers — anyone who wants generative art that moves, that can be replayed exactly, and that needs no code.

Chapter two · How it works

One page, one seeded generator

The whole engine lives inside one page, drawn to canvas in the browser. Nothing is fetched for the art; the only network request in the page belongs to its contact form.1

Its most careful part is its randomness. A seed is hashed once into 128 bits and fed to an sfc32 generator, with independent salted sub-streams for different decisions, and picks are made with a seeded Fisher–Yates shuffle.2 The comments explain why: the old habit of adding a counter to the seed made neighbouring seeds into shifted copies of each other. Now a seed replays a composition exactly and the next seed along is genuinely different.

Above that sits what the page calls a beauty engine, with three strategies. HARMONIA chooses colour relationships first — triads, split complements, analogous sets. GOLDEN walks an eight-dimensional composition space by a low-discrepancy sequence, so consecutive pieces do not clump. EVO keeps a population of fourteen compositions and breeds them by tournament selection, crossover and decaying mutation, steered by the pieces you keep.3

A preset is the full state as base64 JSON in the ?p= query, loaded through the same path as the undo history.4 The recorder captures the canvas at 60 frames a second and asks MediaRecorder for 60,000,000 bits a second, preferring WebM VP9 and then MP4, and names the file after the container it actually received.5

Chapter three · The test

Counting the tables

We requested the page from a local copy of build 537 at 19:58:54 UTC on 27 September 2026: HTTP 200 and 367,539 bytes of HTML, with the whole engine inline. At 20:06 UTC we counted its tables in the served source.6

The algorithm table holds 49 named entries, matching the '49 unique algos' in the page's own description. The shape table holds 21, where the description says 20; two of the 21 are slots for your own images, so the difference is one of counting rather than substance.

We did not measure the bitrate of a finished recording, and that leads to the first caveat in chapter five.

Chapter four · Against the field

Silk and Hydra

Silk

Page read 27 September 2026, 20:02 UTC

Silk, by Yuri Vishnevsky, turns a drag of the pointer into flowing strands, with mirror and spiral symmetry, undo, a choice of colour, and music and sound by Mat Jarvis. You keep a piece by saving its thumbnail image, and art shared through Silk carries a Creative Commons licence.

Where it is betterIt is instant and lovely with almost nothing to learn, and the art follows your hand.

Where DMT goes furtherIts forty-nine algorithms and seeded replay mean a piece can be regenerated exactly from a number, and it records moving video at a requested 60 Mbps where Silk saves a still image.7

Hydra

Page read 27 September 2026, 20:02 UTC, via its documentation

Hydra is a free, open-source video synth and live-coding environment that runs in the browser and compiles to WebGL. Its documentation describes chaining transformations like an analogue synthesiser, mixing camera, screen-share and video sources, audio-reactive visuals, streaming between browsers, and a community gallery.

Where it is betterCode gives Hydra unlimited range; it renders on the GPU, takes live video inputs, and is open source.

Where DMT goes furtherIt needs no code at all — the beauty engine chooses palettes and structures, and in EVO mode learns from what you keep — and it ships a high-bitrate recorder and one-link presets.8

Chapter five · Where it falls short

A request is not a guarantee

The 60 Mbps figure is what DMT asks the browser's encoder for; the code never reads back the bitrate it got, so the number describes intent rather than output.

Because the recorder prefers VP9, a recording made in Chrome is a WebM file, which Apple devices will not open without conversion; MP4 is used only when VP9 is unavailable.9

Browsers that cannot record get a blocking alert box rather than a message in the page. And DMT is not programmable: there is no code layer, no camera or video input to mix, and no streaming between browsers.

Chapter six · The verdict

An instrument for repeatable accidents

DMT goes to real lengths to make randomness trustworthy: a rebuilt generator so that seeds replay and neighbours differ, three stated strategies for choosing what looks good, and a recorder that asks the browser for 60 Mbps. For no-code generative video that you can reproduce and share, it is unusually thorough.

If you want to draw by hand, Silk is simpler and lovelier. If you want to write the visuals yourself, with cameras and shaders, Hydra is the deeper instrument.

Generative art you can reproduce from a number, no code required.

Notes on the evidence

Paths are in the labs.llc build 537 tree; times are UTC on 27 September 2026.

  1. dmt.php line 6741 (the contact form).
  2. dmt.php lines 1366–1430 (seed hash and sfc32) and 1434–1445 (seeded shuffle).
  3. dmt.php lines 5081–5088, 5137–5143 and 5173–5182; modes at line 5554.
  4. dmt.php lines 2713, 2717–2720 and 2970–2979.
  5. dmt.php lines 3265–3275 and 3283–3288.
  6. Tables at lines 1488–1510 (shapes, 21) and 1512–1562 (algorithms, 49); description at line 186.
  7. dmt.php lines 1512–1562, 1366–1430 and 3265–3275.
  8. dmt.php lines 5081–5182, 2717–2720 and 3265–3275.
  9. dmt.php lines 3268–3269; the alert at line 3261.