vork by Voyager
An agent writes a scene as code, renders it on the GPU, looks at the result and revises the code. Source-available and free during the research preview.
翻訳待ち
Make photorealistic 3D vinyl record mockups in your browser: LP jackets, gatefolds, 2LP sets, shrink wrap, hype stickers, obi strips, coloured vinyl and edition numbers. Export transparent PNGs.
翻訳待ち
デザインHTML · PythonGitHub @oceanjustinlinオンライン所有者未確認
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
3D vinyl record mockup generator: LP jackets, gatefolds, 2LP, shrink wrap, hype stickers, obi strips and edition numbers. Browser editor plus a JSON-spec CLI for AI agents.
翻訳待ち
Loading the full README.
Read the full README ↗English · 简体中文
Record Mockup renders photorealistic 3D vinyl record mockups: LP jackets, gatefolds, 2LP sets, shrink wrap, hype stickers, obi strips and limited-edition numbers. Use it in the browser to build a release visual by hand, or drive the same renderer from a JSON scene spec through a CLI that AI coding agents can operate.
Try it in your browser → No install or sign-up needed; your artwork never leaves your machine.
All images in this README are rendered by Record Mockup from its built-in sample artwork. Specs live in docs/specs/.
| Gatefold spreads | Back covers | Coloured vinyl |
|---|---|---|
| Inner artwork and an adjustable opening angle | Obi strip, shrink wrap glare and a stamped edition number | Black, coloured or translucent, set per disc |
Pattern vinyl: a translucent splatter disc and a pinwheel disc, from docs/specs/patterns.json.
format: "7in": 184 mm jacket, 175 mm disc at 45 rpm, with an optional 38 mm large centre hole).scene.mode: "disc").Typical uses: pre-order announcements, store and Bandcamp listings, label catalogues, social posts and pitch decks for a pressing.
Browser editor. index.html is a single-page editor: upload artwork, switch formats, pull records out, orbit the camera and export a PNG, or play an animation on the stage (turntable, swing, record spin, gatefold opening, pull-out) and export it as an MP4 or GIF in 16:9, 1:1 or 9:16. Images are processed locally in the browser and are not uploaded anywhere. The scene, including uploaded artwork and font, is saved in this browser (localStorage for settings, IndexedDB for files) and comes back after a reload; New clears it. Below 860 px wide the editor fits one phone screen, with the settings pages on bottom tabs.
CLI and agents. cli/record-mockup.mjs opens the same page in headless Chrome and drives it through window.recordMockup, so the CLI output matches the editor exactly. Every option is a field in a JSON scene spec with a published JSON Schema, which makes the tool easy for AI agents such as Codex or Claude Code to operate: write a spec, render, look at the PNG, adjust, render again.
flowchart LR
A[Artwork + JSON spec] --> B[record-mockup render]
B --> C[Headless Chrome<br>same renderer as the editor]
C --> D[PNG mockup]
D -->|agent reviews the image| A
npm install.npm ci --prefix cli
The CLI uses your installed Chrome by default. Without Chrome:
cd cli
npx playwright-core install chromium
cd ..
Then add --browser chromium to CLI commands.
mkdir -p output
node cli/record-mockup.mjs schema -o output/schema.json
node cli/record-mockup.mjs slots examples/2lp-gatefold.json
node cli/record-mockup.mjs render examples/2lp-gatefold.json -o output/example.png --json --strict
The example uses the renderer's built-in sample artwork, so no album art is needed.
To start your own scene:
node cli/record-mockup.mjs init -o output/spec.json
This is the beginning of the README. Read the rest at the original. Read the full README ↗