e↗entertrainment
← All project stories
Web & community / PROJECT STORY

Flip Fantazia

A music website with a distinct visual identity, editorial content and listening experiences. Follow its design, implementation and current delivery state.

Music website12 MIN READDEVELOPMENT ARCHIVE · OCT 2026
PROJECT REVIEW · 18 October 2026

Inside the project

Prepared with the project’s development agent from source and retained evidence. This is a project-owner assessment, not an independent customer review. Dated checks were not rerun for this website.

A static website for the Brighton/Hove duo Flip Fantazia, built to replace their Wix site. It is most useful in two places. Music supervisors get one Film & TV page with a 33-album production-music catalogue in six groups, playable SoundCloud and Bandcamp examples, and a brief form that writes the email for them. Record buyers get a Silent Bloom page with a browser-based Evovinyl-versus-PVC listening comparison: automatic alignment, level matching, spectrogram, difference curve, click count and a 16-round blind ABX test. The design follows the Silent Bloom sleeve: the record slides out and flips between sides A and B. It is an unlaunched, noindex preview. The official domain is still on Wix, the comparison has no published transfers yet, and 25 facts await confirmation from the band. A separate supervisor-facing prototype (v2 / Scene Room) shows music-to-picture cue shaping. It uses synthetic audio and generated images and has never been deployed.

What stands out

  • 33-album sync catalogue, with each album linked to its library, rebuilt from the scattered Wix SYNC page
  • A Silent Bloom vinyl comparison tool unusual on an artist site: FFT cross-correlation alignment, level matching, spectrogram, difference curve, an isolated-spike click detector, band focus, and ABX with a binomial p-value
  • Fast static build on Cloudflare: a strict CSP, no tracking scripts, YouTube loaded only after a click, and 301 redirects from the old Wix URLs
  • The release state is driven by one config value, so the pre-order banner changes to 'out now' automatically
  • A careful honesty boundary: new directions (adaptive or game music, sonic identities) are labelled as things the duo is taking on, and v2's synthetic material is kept noindex

Current limits

  • Preview only; the domain hasn't moved from Wix and the band hasn't approved a launch (Tim prefers the Wix site)
  • The comparison tool has no published Evovinyl/PVC transfers (PUBLISHED = null), so visitors must supply their own files
  • 25 unconfirmed facts in ops/to-verify.md, including the vinyl date (18 Nov vs 4 Oct), PVC edition status, sugar beet vs sugarcane, and writer splits
  • No real band or studio photos; artwork is hot-linked from Bandcamp and Wix servers
  • The brief form uses mailto only, with no server inbox
  • Collection examples were chosen from titles, not by listening

Features & evidence

Sleeve and record hero

released

The visitor sees the Silent Bloom sleeve open and the record slide out and flip between sides A and B; reduced motion is respected

Recorded evidence

Commit a7b412a, 2026-10-04; deployed to the Cloudflare preview as version f9385043 (noindex), all pages returned 200 on 2026-10-04

Film & TV catalogue and brief

released

The visitor browses 33 library albums in six groups, plays examples, and builds a brief email (budget, deliverables)

Recorded evidence

Same deploy; check-links passed 2026-10-04

Evovinyl vs PVC listening comparison

released

The visitor loads two transfers, hears them aligned and level-matched, sees spectrogram and difference curves, and takes a 16-round ABX test

Recorded evidence

On the preview since 2026-10-04; click detector checked by hand on 2026-10-04 (0 clicks on a clean file, 6 on a damaged one); no published transfers

Press kit PDF

released

The visitor downloads the press kit printed from the /press/ page

Recorded evidence

src/static/press/flip-fantazia-press-kit.pdf, generated 2026-10-04 by scripts/press-pdf.mjs

v2 / Scene Room (supervisor prototype)

component-tested

The visitor shapes a three-beat cue (calm, tension, release or silence) against picture, compares A/B, keeps timecoded notes, and exports a brief

Recorded evidence

npm run check:v2 passed (503 links, 11 tests) and was browser-tested locally at 1280 and 390 px per ops/v2/validation.md, 2026-10-04; uncommitted; never deployed

Clip library toolkit

component-tested

The band tags their own MIDI parts (key, swing, feel, mood, rights) and searches them; not visitor-facing

Recorded evidence

6 Python tests passed 2026-10-04; committed in cd2d9db; not yet run on a real Flip Fantazia library

Clip Sketcher / adaptive game music in AssistantApp

planned

Turns a brief into a sketch or adaptive cue built from the band's own parts

Recorded evidence

clip-library/SPEC.md and the 2026-10-04 game-music roadmap doc; no code

Review updates & corrections
  • No code or deploy changes: the reflog still ends at a7b412a (2026-10-04)
  • Wording: the studio is in Hove (the Vault page says 'an old bank vault in Hove'); the homepage line says Brighton. Prefer 'Brighton/Hove duo' in website copy
  • Excluded from demos: the 15 synthetic v2 WAVs (not band recordings) and duo.webp (an AI likeness of Doug and Tim, which needs their consent)

Workflow walkthrough

A guide to the native workflow. These steps describe the app; only the recordings and images embedded on this page are available as website demonstrations.

  1. Open the preview homepage and watch the Silent Bloom sleeve open; click to flip the record from side A to side B. (Interactive on the preview site.)
  2. Go to Film & TV, scroll the 33-album catalogue, and play a SoundCloud example from 'Tension & momentum'. (Interactive.)
  3. Fill in the brief form (scene, budget, deliverables) and review the prepared email. Nothing is sent automatically. (Interactive.)
  4. On Silent Bloom, load two audio files into the comparison, look at the difference curve and click count, and take the ABX test. (Interactive with your own files; the official transfers don't exist yet.)
  5. Optional prototype: in the local v2 Scene Room, set a thriller opening to Silence, mute the motif, and compare A with B. (Existing local captures only, see demos; not publicly playable.)
Planned captures · not yet available
  • v1 homepage hero, and the Silent Bloom comparison with a difference curve

Development biography · earlier archive

Development profile compiled from project source and retained records in October 2026. Dates and test results describe those records; they do not imply a new build, live acceptance test or public release.

Collected read-only on 2026-10-17 by the Claude session that built v1. No builds, no deploys, no edits. Network checks weren't possible today, so all live-site facts are as last verified on 2026-10-04.

Biography

The problem. Flip Fantazia have two artist records and a large back catalogue of production music, but their official Wix site undersold both. An audit on 4 October 2026 found:

  • a broken "Order from our bandcamp" link (404)
  • "Silent Boom" misspelt four times
  • an unqualified "100% sustainable" claim
  • no player on the Silent Bloom page
  • a sync reel that was actually Tim's solo work
  • file-name alt text on 24 of 47 images
  • URLs like /projects-8
  • pages of 0.56–0.94 MB of HTML

Doug asked for "an amazing site that would suit", developed locally and hosted on his own Cloudflare account. Source: session transcript, and ops/to-verify.md items 22–24.

The idea. v1 makes the newest record the front door. The homepage hero is the Silent Bloom sleeve with an SVG record that slides out and flips between side A and side B, under the line "Cinematic electronica from an old bank vault in Brighton."

Each record has its own page and mood:

  • Silent Bloom: dark with saffron accents
  • The Trip: dusk-toned

Release dates live in one config object (RELEASE in src/assets/site.js), so a pre-order can switch to "out now" without editing pages.

Listening experience.

  • Track groups cue the official Bandcamp player.
  • SoundCloud playlists play Flip Fantazia's own Ninja Tune and Delimusic work (Tim's solo reel is no longer used).
  • YouTube loads only after a click, through a privacy-friendly facade.

The distinctive piece: the listening comparison. Silent Bloom is pressed on plant-based Evovinyl with a conventional PVC reference pressing. The page carries a Web Audio comparison tool (src/assets/listening-test.js). Once the two transfers are published, it:

  • lines the two recordings up automatically using cross-correlation (FFT)
  • matches their levels
  • shows spectrograms, a difference curve and the quietest passages
  • counts clicks by finding isolated spikes against the surrounding energy (rewritten after the first version over-counted)
  • lets the listener focus on one frequency band
  • runs a 16-round ABX blind test that reports a binomial p-value

It turns a sustainability claim into something a listener can test. Until the transfers exist it runs on files the visitor supplies, and the PUBLISHED config is null. A pressing log and partner credits sit alongside it.

For buyers. The Film & TV page (old /projects-8 and /sync redirect here) collects:

  • three collections with SoundCloud and Bandcamp examples
  • a 33-album library catalogue in six groups, linking every album the duo have written for, reconstructed from the Wix SYNC page
  • the libraries table: Ninja Tune Production Music, Cavendish, Delimusic, BMG Production Music labels, Cutting Edge, SATV, 360 Records and others
  • three ways to work with them
  • a "new directions" section (adaptive music, sonic identities), honestly labelled as things they are taking on rather than past credits
  • a brief form that builds an email; it doesn't submit to a server

Other pages:

  • Music: artist records, library albums with Apple Music links, and the Cypherpunx techno alias
  • The Vault: the duo's story, collaborators and timeline
  • Press: a downloadable press-kit PDF, generated from the page with headless Chrome

Design history. A plainer "own words, real photos" rework was deployed on 2026-10-04 after a bandmate called v1 "a bit Claudesque". Doug preferred the original, which was restored the same day (commit a7b412a), keeping the new catalogue in the original style. That restored design is the current v1.

The v2 / Scene Room prototype (separate, never deployed). A Codex session built /v2/ and /v2/scene-room/ in the same repo as a concept aimed at music supervisors. It has:

  • a listening desk of six synthetic 24-second sketches, each with a full and a dialogue-friendly mix, measured waveforms and a shortlist
  • six real recordings (Silent Bloom, Warm Rain, Collateral Damage, Streets Of Rage, Dança Este Samba, Boogaloo Breakdown) played through their native Bandcamp or SoundCloud players
  • a cue builder: three story beats per documentary, thriller or brand-film brief, each set to calm, tension, release or silence, with variable length, switchable layers and an A/B compare
  • picture sync with generated stills, a 24-second example film, or a local video file that never leaves the device
  • timecoded notes, project export and import, and share links that leave out private notes

v2 is always noindex, even in a launch build, because its audio is synthetic and its images (including a portrait-based "studio re-enactment" of Doug and Tim) are AI-generated. Sources: ops/v2/README.md, ops/v2/scene-room.md.

Behind the scenes: clip library. clip-library/ is a zero-dependency Python toolkit for building a tagged library of the duo's own MIDI parts. It:

  • parses MIDI files
  • estimates key (Krumhansl-Kessler), swing and timing feel
  • describes drum patterns
  • validates tags against a mood/feel/role/rights vocabulary
  • searches with transposition and nearest-mood fallback

SPEC.md specifies a future "Clip Sketcher" in AssistantApp that turns a brief into a sketch built from real Doug and Tim parts.

A concrete visitor journey (v1).

  • A music supervisor lands on the homepage and sees the sleeve open.
  • They go to Film & TV, scan the six catalogue groups and play a SoundCloud example from "Tension & momentum".
  • They open the brief form, choose budget and deliverables, and send a prepared email.
  • A record buyer goes the other way: Silent Bloom, the Bandcamp player, the pressing log, then loads two transfers into the comparison tool and takes the ABX test.

Modules and features

ModuleWhat a visitor can see, hear or tryAuthored or dependency
Sleeve/record hero (index.html, site.js)Animated sleeve, record with groove bands, sheen and A/B flip; reduced motion respectedAuthored
Release configPre-order and "out now" states driven by RELEASE.vinylDate (2026-11-18)Authored
Silent Bloom pageBandcamp player, pressing log, partners, comparison toolAuthored; player by Bandcamp
Listening comparison (listening-test.js)Alignment, level match, spectrogram, difference curve, click count, band focus, 16-round ABX with p-valueAuthored on the browser's Web Audio API
The Trip pageDusk theme, 24 artist quotes (from the Wix page), a feedback sheetAuthored
Film & TV pageCollections, 33-album catalogue (#catalogue), libraries table, brief form (mailto)Authored; SoundCloud and Bandcamp embeds
Music, Vault, Press, 404Discography, story and timeline, press-kit PDFAuthored
Old-URL redirects (_redirects)/thetrip, /projects-8, /sync, /link-to, /silentbloom → new pages (301)Authored config, Cloudflare feature
Security and indexing (headers.txt → _headers)Strict CSP; noindex until --launchAuthored
v2 / Scene RoomSee §3; local preview onlyAuthored by Codex
Clip library (clip-library/)Not visitor-facing; CLI toolsAuthored

Technical foundations

  • Build: build.mjs (Node, no framework) turns front-matter pages plus partials into dist/. It generates sitemap.xml, robots.txt (Disallow all unless --launch) and _headers. Assets are cache-busted with a ?v= SHA-256 hash.
  • Hosting: Cloudflare Workers static assets, configured in wrangler.jsonc: html_handling: auto-trailing-slash, not_found_handling: 404-page.
  • Scripts:
  • scripts/deploy.mjs: labels each Cloudflare version with the git commit
  • scripts/check-links.mjs: internal links and anchors, with optional external checks
  • scripts/press-pdf.mjs: builds the press-kit PDF with headless Chrome
  • v2 only: check-v2.mjs, generate-v2-audio.py (numpy synthetic stems), generate-room-film.swift (AVFoundation)
  • Third-party at runtime: Bandcamp, SoundCloud and YouTube embeds; Google Fonts; Bandcamp, Wix and YouTube image hosts (allowed in the CSP).
  • Dependencies: the only npm package is wrangler, and the clip library has no dependencies. No local Swift packages: AssistantApp is related but not linked.
  • Ops templates (ops/, not deployed): catalogue, placement and pitch registers (CSV), pitch template, delivery spec, sync plan, new directions, a Silent Bloom press release, and the to-verify list.

Maturity (evidence and dates)

FeatureTests/checksBuiltRuntime verifiedDeployed/released
v1 site (all pages, restored design + catalogue)check-links passed 2026-10-04YesAll pages returned 200 on the preview, 2026-10-04Preview only. Cloudflare version f9385043 at https://flipfantazia-site.douglas-57d.workers.dev (noindex). Not launched; domain still on Wix. Not rechecked since 2026-10-04
Listening comparisonClick detector checked by hand: 0 clicks on a clean file vs 6 on a damaged one (2026-10-04)YesRuns in the browser with visitor-supplied filesOn the preview; no published transfers (PUBLISHED = null)
Press-kit PDFn/aYesn/aOn the preview
Clip library6 Python tests passed, 2026-10-04n/aNot run on real FF MIDI (no tagged library yet)No
v2 / Scene Roomnpm run check:v2 passed (503 links, 11 tests), per ops/v2/validation.md, 2026-10-04LocallyCodex in-app browser at localhost:8787, desktop 1280 and mobile 390Never deployed, deliberately
Clip Sketcher (AssistantApp)————

Git history (.git/logs/HEAD):

  • 7327162: initial build
  • cd2d9db: rework + catalogue
  • a50c785: ignore symlinked node_modules
  • a7b412a: restore design

All four commits are dated 2026-10-04. Nothing in the reflog after that.

Limitations and roadmap

Limitations:

  • 25 facts await the band , including:
  • the vinyl date (18 Nov vs 4 Oct)
  • PVC edition status
  • sugar beet vs sugarcane
  • writer splits
  • The comparison tool has no published transfers yet.
  • There are no real band or studio photos.
  • Artwork is hot-linked from Bandcamp and Wix servers.
  • The brief form is mailto only.
  • Collection examples were picked from titles, not by listening.
  • The bandmate prefers the existing Wix site and says traffic is low, so launch is undecided.

Roadmap (aspirations, not built):

  • confirm the facts and launch with npm run deploy:launch, then move the domain (needs Doug)
  • publish the Evovinyl and PVC transfers
  • host artwork locally
  • real photos
  • possibly fold cleared material from v2 into the site, using real stems and real briefs
  • the clip library and Clip Sketcher in AssistantApp, then adaptive game-music pilots

FAQs

Is this the official Flip Fantazia site? Not yet. It's an unlaunched preview. flipfantazia.com is still the Wix site.

Can I hear the Evovinyl vs PVC difference? The tool is built, but the two transfers aren't published yet. You can load your own files.

Is the music in the Scene Room by Flip Fantazia? No. The sketches are synthetic demos. Real tracks play through Bandcamp and SoundCloud.

How do I license a library track? Through the library listed for each album (e.g. BMG Production Music), or via the Film & TV brief.

What does it run on? Static files on Cloudflare Workers, with no server code and no tracking scripts.

Explore the connections.

Browse all project stories ↗