Decimen streams files through fountain-coded QR frames without pairing

ms78921 pts0 comments

so there's no flash<br>of the wrong palette before React hydrates. Mirrors the useTheme hook<br>(storage key "rw-theme"; classes rw-theme-dark|light|ascii). -->

Decimen streams files through fountain-coded QR frames without pairing - RuntimeWire

RuntimeWire

You're browsing RuntimeWire with JavaScript disabled. Articles and<br>navigation work fully. Interactive features — search, comments,<br>and newsletter signup — require JavaScript.

Why it matters

Decimen shows how AI coding agents can compress the path from protocol idea to working systems demo, while exposing an optical channel useful for both provisioning and data exfiltration.

A pseudonymous software engineer using the name Alstroph released Decimen Optical Transfer on July 31st, turning a screen and camera into a one-way file link built from rapidly changing QR codes. In a demonstration post, Alstroph said the proof of concept was built with Claude Code in one night.

The project grew out of a cached web music player. Alstroph wrote that frustration with streaming audio quality and advertising led to an attempt at phone-to-phone music sharing that would not depend on Apple AirDrop or require both devices to use the same transfer service. The creator later described the concept as a "sneaker net for music sharing" and acknowledged that the result sits closer to a technical experiment than a finished consumer feature.

Alstroph says they have worked as a professional software engineer for over a decade and have used Claude Code for both work and personal projects since the coding agent's early release. The creator also said the optical-transfer concept preceded the Claude session, with the AI tool used to implement the proof of concept.

How Decimen handles missed frames

Decimen divides a file into blocks and displays an endless sequence of QR frames. A second device points its camera at the screen, decodes enough frames and reconstructs the original file. The receiver can start watching after the transmission has begun because every frame includes a 20-byte header containing a session identifier, sequence number, block information, file length and hash.

The important component is Luby-transform fountain coding. Each displayed frame combines a pseudorandom subset of the original file blocks. The receiver does not need every frame or a specific sequence. Decimen's documentation says it can rebuild the file after collecting about 1.15 times the original number of blocks, absorbing frames lost to blur, autofocus, mismatched refresh rates or slow decoding.

That design eliminates the need for a return channel asking the sender to repeat a missing frame. It also allows the sender and receiver to run at different frame rates. Decimen uses TypeScript and Vite, generates codes with node-qrcode and performs camera-side decoding through zxing-wasm, which packages ZXing-C++ for WebAssembly.

The repository also addresses browser-specific failures that a typical QR demo can ignore. It uses a deterministic logarithm implementation so V8 and JavaScriptCore calculate identical fountain-code distributions, accounts for iOS camera frame-rate behavior and runs decoding workers around dropped frames. The code was published under the MIT license.

The speed claim comes with a setup caveat

Alstroph's original demonstration claimed about 120 KB/s. The repository documentation says the broader experiment reached about 128 KB/s while handheld and about 186 KB/s when the receiving phone was propped up. It also describes a 2 MB image transfer measured at 129 KB/s. Those figures are creator-reported benchmarks rather than independent measurements.

The stripped-down public version sends a selectable 512 KB or 2 MB image. Its default configuration displays 1,465 bytes per frame at 24 frames per second, while the higher-throughput experiment used denser QR codes, stacked codes, a 120 Hz display and an error-corrected color channel.

Decimen's claim of moving the payload without a network is accurate once the browser pages are running, but the current setup is not a turnkey workflow for two completely isolated devices. The instructions have the sender run a local Vite server and tell the receiving phone to load an HTTPS page from the server's local-network address before activating its camera. The file bytes then cross the gap through light rather than the LAN.

A deployable air-gapped version would need the sender and receiver software installed or loaded on each device in advance. The present repository proves the optical channel and recovery method, rather than packaging the full operating procedure for locked-down environments.

Animated QR transfer already has a history

Decimen is a new implementation of an established idea. TXQR, first published in 2018, also combines animated QR codes with fountain coding. Qrs streams data through QR-code series using Luby-transform encoding. Airgapped QR Code Transfer provides a browser implementation built with Vue.js, compression and...

decimen frames file frame transfer code

Related Articles