Projects

akaCOVART

akaCOVART — a generative album-art engine

Built by Ieuan King (akaBuild). Open source; the akaCOVART name is a trademark of the project owner.

Open source · Generative studio · Album art

akaCOVART

A generative album-art engine — shape it, sync the motion to your track, and export the cover. akacovart.com

What this is

akaCOVART is a browser-based studio for making album art. You pick an engine, drop in a seed, and shape the result with a handful of controls — palette, composition, film texture, type — then export a print-ready cover or a looping video. It’s built for musicians, labels, and designers who want a distinctive sleeve fast, and for developers who want a clean generative engine to build on.

Every image is data

At its core is one decision: every image is data. A cover is fully described by an engine, a seed, and a small set of parameters — nothing else. Feed the same seed and the same settings back in and you get the exact same artwork, on any machine, every time. A look you love isn’t a lucky export you can’t reproduce; it’s a tiny, shareable recipe. That determinism is the spine of the whole tool.

{ engine, seed, palette, composition, film, type }
        │
        ▼  deterministic render (seeded RNG)
  3000×3000 PNG  +  synced video loop

What you make

Three focuses, seven engines. The Art focus gives four abstract field engines:

  • Blob. Soft, painterly clouds of colour with diamond detail zones.
  • Grid. Organic cells arranged on a grid, from sparse to packed.
  • Contours. A 3D heightfield terrain drawn as receding ridgelines.
  • Signal. Overlapping wave gratings that add into shimmering moiré interference.

The TxT focus makes your display text the subject, styled by three type engines — Dither (pixelated + broken), Lines (round-cap hatching clipped to the glyphs), and Blur (gooey blur-to-threshold metaballs) — and Stack composites a type layer over an Art background, as an on-top overlay or an art-filled knockout.

On top of any engine: hand-tuned palettes (dark, cream, grey, or a seed-picked random), a colour picker that pushes the whole palette toward any hue, and a light-to-dark tone control. A film-finish pass layers in grain, dust, scratches, vignette, and bloom for a printed, physical feel, and a type layer handles title and artist with selectable fonts, case and glitch options, and drag-to-place positioning. A focus-aware grid of curated starting points (with live hover previews) gives one-click starts; export drops a 3000×3000 PNG sized independently of what’s on screen.

Motion & music

Two modes. Still is a single frame. Animate makes the cover move to a beat you set by hand — BPM, pump, kick, plus motion tuned per engine — or, with the Track source, drop in an MP3 or WAV, trim a clip, and the art reacts to the track’s energy and beats, exporting a real MP4 with the audio muxed in.

There’s one rule the motion never breaks: energy only ever moves space — scale, position, displacement — never brightness, opacity, or hue. No strobe, no flash, no flicker. Beats read as physical movement, which is easy to watch on loop and safe for photosensitive viewers.

Under the hood

The generative core is a pure, framework-agnostic Canvas-2D module with no UI dependencies — parameters go in, pixels come out — which is why the same code drives the live preview, the high-res export, and the gallery thumbnails without changes. Each engine is a small plugin behind a shared interface and a registry, so adding one is self-contained. Randomness comes from a seeded generator rather than the system’s, and that’s what guarantees the determinism. The studio around it is a thin React layer over a single flat state object whose keys are exactly what the engine reads — so “the artwork as data” is literally the app’s state minus its buttons. Because a cover is just data, you can hand a settings blob to a model and ask it to nudge the look.

Next.js (static export) · React · TypeScript · Tailwind · Zustand · Canvas 2D · Web Audio API · WebCodecs (H.264/AAC) MP4 export

Status & what’s next

Built, live at akacovart.com, and usable today: three focuses and seven engines, Still and Animate modes with BPM or track-driven motion, curated starting points, and PNG + MP4 export (audio muxed in for track-synced clips). Planned: more engines and deeper audio mapping.

More views

Controls — engine, seed, palette, motion
Controls — engine, seed, palette, motion
A finished Waves cover
A finished Waves cover
Grid + Waves engines
Grid + Waves engines
Waves, up close
Waves, up close
Animate — move the cover to a beat
Animate — move the cover to a beat
Audio — react to a track
Audio — react to a track

Why it's different

Most cover generators hand you a lucky export you can’t reproduce. akaCOVART makes every cover a tiny, deterministic recipe — engine + seed + a few parameters — so the look you love reopens identically on any machine, renders to a 3000×3000 print or a beat-synced video from the same data, and is simple enough for a model to nudge.