Films

Every film I have made, in one place: product films, brand films and music videos, all made in code.

None of this is filmed. A product film is the product’s own interface rebuilt in code as a function of time, so a vertical cut is a new layout and not a crop. A music video is a web page that draws frame t, captured frame by frame. 37 films, 88 minutes.

One · Product films

The product, playing itself

One film per product, each at its full length with sound. Shorter and vertical cuts of the same film are listed under it.

  • ArchCanvas studio film

    ArchCanvas

    A product film whose picture is a coded replica of the ArchCanvas studio, not a screen recording. Four lengths by two aspect ratios, in two cuts, from one scene library.

    Remotion, coded UI replica

    • 15 / 30 / 60 / 120 s
    • 16:9 + 9:16
    Also on YouTube →
  • ArchLang film

    ArchLang

    A coded replica of the ArchLang playground in which every floor plan is compiled during the render by the real compiler, with real command-line output and a synthesised soundtrack.

    Remotion, real compiler in the render

    • 68 s
    • 16:9
    Also on YouTube →
  • echook film

    echook

    A replica of the product's terminal interface that is a pure function of time, set in a procedurally painted watercolour world with a synthesised score.

    Remotion, procedural watercolour, synthesised score

    • 15 / 30 / 60 s
    • 16:9 + 9:16
    Also on YouTube →
  • a11y-loop film

    a11y-loop

    A narrated film in which every number on screen is captured from the real command-line tool and gated by an automated verify step.

    Remotion, figures captured from the real CLI

    • 2 min 59 s
    • 16:9
    • narrated, captions burned in
    Also on YouTube →
  • GAVIGO IRE product film

    GAVIGO

    The product interface recreated in code as a pure function of time and cut to measured downbeats.

    Remotion, coded UI replica

    • 30 / 60 s
    • 16:9 + 9:16

    Product UI recreated in code; sequence shortened. Controlled measurements, not a production SLA.

    Also on YouTube →
  • CORDE Mobile product film

    CORDE

    A coded replica of the offline-first field app over a procedurally painted watercolour map, with a synthesised score and sound effects.

    Remotion, procedural watercolour map, synthesised score

    • 30 / 60 s
    • 16:9 + 9:16

    The interface is a coded replica of the app. Every name and place shown is fictional.

    Also on YouTube →
  • She Sharp product film

    She Sharp

    The member platform's interface rebuilt in code, with gates that trace every on-screen string and figure to its source.

    Remotion, coded UI replica, synthesised audio

    • 30 / 60 s
    • 16:9 + 9:16
    Also on YouTube →
  • Tam-AI-Ti product film

    Whiri-AI

    A coded replica of the product interface with procedural watercolour art and a synthesised score.

    Remotion, procedural watercolour, synthesised score

    • 15 / 30 / 60 s
    • 16:9 + 9:16

    Interface recreated in code for this film. Demo account and figures are illustrative.

    Also on YouTube →
  • Eatropolis website film

    Eatropolis

    The festival website's own interface rebuilt in code as a pure function of time, with gates that keep every frame true to the product.

    Remotion, coded UI replica

    • 15 / 30 / 60 s
    • 16:9 + 9:16
    Also on YouTube →
  • AI programming school product film

    AI Programming Education Platform

    A coded replica of the free bilingual course site and its AI assistant.

    Remotion, coded UI replica

    • 30 / 60 s
    • 16:9 + 9:16
    Also on YouTube →

Two · More cuts

The same products, told another way

Some products have more than one film: an earlier version, or a second idea made on a different engine. They are kept here beside the one each product shows.

  • ArchCanvas, the 92-second film

    ArchCanvas

    A film with no voiceover, built from one continuous session on the live product. Music, sound design and text cards carry the argument, and five build gates enforce cleared copy and honest footage.

    HyperFrames, footage of one real product session

    • 92 s
    • 16:9 + 9:16
  • ArchCanvas «Zoom Out»

    ArchCanvas

    One continuous zoom across the product's infinite canvas, told backwards. A silent film carried by text set in the canvas and one music bed, with four aspect ratios out of one edit.

    Remotion

    • 73 s
    • 16:9, 9:16, 4:5 and 1:1 from one edit
  • echook, the first film

    echook

    The earlier promo, made when the product was still called claude-code-audio-hooks, with React-based animation, generated voice and sound effects, and a Suno score.

    Remotion, ElevenLabs, Suno

    • 89 s
    • 16:9

ArchCanvas feature shorts

Six 21 to 29 second shorts, one product feature each, cut from the same session on the live product as the 92-second film and reusing its on-screen copy word for word. Each exists in 16:9 and 9:16.

Three · Brand & event films

For a name, not a product

  • She Sharp × Les Mills, “No Pain, All Gain”

    She Sharp

    An event promo rebuilt from photographs of the May 2024 Les Mills evening, with a Suno score cut on the beat.

    Remotion, Suno

    • 30 s
    • 4 aspect ratios
    Also on YouTube →
  • Chan Meng, 64-second video business card

    Chan Meng

    The brand monkey escorts eight on-screen facts about Chan's work, each one traced to the career database, painted in the sting's world and cut to a code-synthesised score.

    p5.js, p5.brush, code-synthesised score

    • 64 s
    • 16:9
    Also on YouTube →
  • Chan Meng monkey, brand sting

    Chan Meng

    A wordless sting for Chan's own mark. One orange pixel circles the monkey, bursts, and swirls back into a disc as the monkey settles into the exact logo. Every frame is a pure function of time.

    p5.js, p5.brush, code-synthesised score

    • 12 s
    • 16:9
    Also on YouTube →
  • Chan Meng, showreel

    Chan Meng

    Eleven projects, one print and one figure each. The brand monkey's pixel pins up a print in which the project's own finished film plays (for the two projects without a film, its animated README card or a screen capture of its site) and stamps one figure traced to the career database. Painted in the intro's world; the short cut shows the first five.

    p5.js, p5.brush, score played by sampled instruments

    • 55 / 112.5 s
    • 16:9
    Also on YouTube →

Four · Music videos

Drawn entirely by code

Films for my own songs. Each one is drawn a different way, and no image or video generation model is used for the picture. They play in up to 1080p and adjust to the connection.

October Rain · February Line

2 films · 11 min

Two films for two of Chan's songs. Every frame is drawn by code, a web page draws frame t, headless Chrome captures it and ffmpeg adds the song.

  • 1A Drizzle in October十月的微雨

    Hand-inked cel animation, the ink lines redrawn every second frame

    Also on YouTube →

Songs by Chan Meng, made with Suno. Production method, frame renderer and cel brush engine from the open-source mg-styles-15 library (MIT). No image or video generation model is used for the picture.

Anti-Marriage Universe反婚宇宙

3 films · 15 min

A trilogy, one blind date in a café seen three times, hers, his and from above, each film in its own visual style. Every frame is drawn in code and cut to the song's beat grid.

Music, lyrics and recordings by Chan Meng. Visual styles and engine modules from the open-source Lemo-Opuscar style library (MIT). No video generation and no stock footage.

Memory Amber 2022记忆琥珀2022

8 films · 35 min

Eight films for one album, a memoir of one year, with one film per song and a different way of drawing for each. Three rules run through all eight, one amber light per film, one white that changes meaning from film to film, and no faces.

Songs and lyrics by Chan Meng, generated with Suno. Renderer, timing tools and method adapted from the open-source mg-styles-15 library (MIT); several films adapt techniques from the Lemo-Opuscar style library. No image or video generation model, no photograph and no footage is used for the picture.

A Coffee for One独身主义的咖啡

1 films · 4 min

One film for one of Chan's songs. Python paints the watercolour layers, a web page animates them as a pure function of time, headless Chrome captures every frame and ffmpeg adds the song.

  • 1A Coffee for One独身主义的咖啡

    Procedural pen-and-wash watercolour, with rain on glass

    Also on YouTube →

Song and lyrics by Chan Meng, made with Suno. Painted with numpy, OpenCV and Pillow, timed with faster-whisper, librosa, pypinyin and OpenCC, rendered with puppeteer-core and ffmpeg. Pen-and-wash habits and one transition idea are adapted from the notes of the Lemo-Opuscar style library, with no code copied. No image or video generation model, no photograph and no footage is used for the picture.

The channel on YouTube →