build / 2026 / daily-build + preact Ink Mule Separator lays cyan, vermilion, and yellow halftone sheets across a scarred cutting mat beside a live overprint proof and production controls.

artifact plate

Ink Mule Separator: Pull Three Spot Plates Into Register

An accountless three-spot halftone workbench for separating local artwork, tuning ink behavior, registering plates, and exporting reproducible print assets.

Open the build →

Ink Mule Separator turns local artwork into a three-spot print job laid out across a scarred cobalt cutting mat. Cyan, vermilion, and yellow separation sheets expose their own dot fields on the left while a large composite proof shows the live overprint on the right. Registration pins sit directly on the proof, ink tins arm or lift each plate, and a squeegee anchors the whole thing as a print bench rather than another dashboard coffin.

Load an image from disk, pick an ink recipe, tune screen angle and mesh frequency, then drag the colored registration pins until the plates lock together. Keyboard nudging handles finer corrections. Lifting an ink immediately changes the proof, and the saved recipe remains local to the browser.

Three interacting systems run the press:

  1. Deterministic halftone separation. Screen angles, mesh frequency, ink lifting, and source pixels feed a reproducible three-plate processor. The individual sheets and composite proof come from the same dot calculation, so changing production parameters alters both views coherently.
  2. Direct registration. Each plate owns a pointer-draggable, keyboard-nudgeable pin mounted on the overprint proof. Pin movement offsets that plate in the composite while the recipe persists the correction for later work.
  3. Production export. Composite PNG captures the assembled proof, plate PNG emits a single separation for output, and recipe JSON records the screen, mesh, ink, and registration state needed to reconstruct the job.

Preact and signals keep control state compact without wrapping the instrument in a heavy application framework. TypeScript defines the plate and recipe contracts. Canvas 2D handles the pixel-heavy halftone pass and makes local image loading plus PNG export straightforward. The tradeoff is deliberate: Canvas gives up editable vector dots, but it avoids bloated SVG documents when an image contains tens of thousands of marks.

The entire processor runs client-side. Artwork never leaves the machine, no account is required, and no user data is collected. Playwright checks the 1600×900 bench and 375×812 mobile layout, verifies minimum touch targets and horizontal containment, exercises ink lifting and keyboard registration, loads the captured artwork back through the file input, downloads all three durable outputs, and finishes with zero console errors.