R4NT Magazine

← About

Restoring the archive

Chronicle

By 2026 both r4nt.com and its companion site blog.r4nt.com had been dark for years — the live WordPress installs were long gone, the theme files unrecoverable from any running server, and what remained on the public web was a partial static export with broken images, dead Flash embeds, and HTML entities everywhere you looked. Rebuilding it was less “migrate a site” and more an archaeological pass through whatever pieces survived.

The salvage list, in the order each piece turned up:

  1. A November 2008 phpMyAdmin SQL dump of the magazine
  2. A flat HTML mirror of the live site, useful for gap-filling anything the dump pre-dated
  3. A September 2015 wp-db-backup dump of the blog — in a different SQL dialect, missing the users table entirely
  4. A folder dump of the blog’s entire wp-content/ tree with 32 MB of original uploads

None of these were complete on their own. Stitched together, they cover the full nine-and-a-half year run.

A lot of the work was in the seams. The dumps were nominally UTF-8 but carried stray Windows-1252 punctuation bytes (curly quotes, en-dashes, ellipsis) that turned into U+FFFD replacement glyphs on read; that’s why “Forzani’s Walk/Run” reads properly here instead of as “Forzani Walk/Run”. WordPress shortcodes like [caption] were unwrapped into proper <figure> markup. Flash-era YouTube <object> embeds got converted to modern responsive <iframe>s. Six accidentally-duplicated blog posts (re-imports that WordPress had auto-suffixed with -2) were merged. The four legacy WordPress “page” rows (about, faq, contact, archive) got filtered out of editorial listings while keeping their direct URLs alive.

Image recovery deserves its own paragraph. Magazine media came mostly intact from a copy of the original uploads tree. The blog’s images were a different story — spread across a dead CDN, a long-retired Flickr hostname, and dozens of hot-links to other 2008-era sites that variably survived:

102

blog.r4nt.com refs remapped to local files

64

Flickr images recovered via farm[N].static live.static swap

~33

hot-linked images pulled from the Wayback Machine

95%

of blog-body images now resolve to a real file on disk

Four images that came back from the Wayback Machine after their original hosts went dark — a sample of the ~33 hot-link recoveries.

Pre-WordPress flat assets (/blog/wp-content/) were lifted into a media/blog/legacy/ tree alongside everything else.

Author identity got a small but satisfying fix. The WordPress “admin” account on both sites was actually David Gluzman, posting under a stripped-down byline. Folding the two together brought everything he wrote — 281 posts across nine years — under one name.

The site itself is a Next.js 16 app that reads from a single SQLite file at build time, then renders to fully static HTML. Search runs client-side against a Pagefind index built into the deploy. URLs from the live WordPress era — /article/<slug>, /quick-review/<slug>, /YYYY/MM/DD/<slug> permalinks — all 301 to the new shape, so anything that ever pointed at the old site still resolves.

Hosting is split between two Cloudflare services. The HTML lives on Cloudflare Pages, served from the edge with no server runtime — which means no databases to keep up, no SSL to renew, no patching. The 2.9 GB media library (originals, recovered Wayback grabs, theme art, the lot) lives on Cloudflare R2 behind a custom domain at media.r4nt.com. R2 has free egress to Cloudflare-fronted domains, so serving the magazine’s imagery costs essentially nothing. The whole archive could plausibly run untouched for the next twenty years on a few cents a month.

Editorial corrections happen via a small admin tool that only ever runs locally on the maintainer’s laptop — edits commit to git, GitHub triggers a Cloudflare Pages build, the static HTML rebuilds itself in about three minutes. There’s no logged-in writable surface anywhere on the public internet. Less to break, less to attack, and the canonical source of every word is just text files in a repo.

The second pass

Recovery turns into reading once the bulk lands. The closer the archive got read, the more it surfaced of its own accord.

Many posts had been tagged “article” out of habit — a movie review, a game writeup, an album piece, all wearing “article” plus something more specific. Pulling that redundant tag from 392 posts gave Articles back its character: just essays. Food & Wine absorbed three near-duplicate buckets (food-drink, wine, recipe). Music absorbed the audiocast format — the 14 R4NT Radio episodes are music shows, not a separate kind of thing, and they share that home now with 169 album reviews, interviews, and mixes.

What jumped out once everything was counted properly: music was huge.183 posts — more than a quarter of the magazine’s editorial output between 2001 and 2010. Reading back, that tracks; the magazine clearly had ears.

A handful of smaller fixes turned up in passing. 87 internal links that pointed nowhere got patched — legacy /v[45]/article/<id> URLs traced back to modern slugs from their anchor text, casing the live redirect function had been silently 404-ing on, dead forum and poll links unwrapped to plain text. 586 posts had a hero photo waiting in post_meta.LargeImage that the original theme had rendered above each article and the WP→archive extraction never inlined; they’re back at the top of every post that owned one. The Coldcut interview gave it away — its caption “Photograph by Steve Double” had been hanging in the body alone since 2008.

Coldcut — Jon More and Matt Black, photograph by Steve Double
The Coldcut interview hero. Photograph by Steve Double, restored above the article body in the second pass.

Audio and video, made playable

Two pockets of the archive needed more than a metadata pass — the music shows and the original short films. Each had survived as a directory of files plus a handful of post bodies pointing at them through layers of 2008-era player markup that no longer worked anywhere.

The audio side covered three small bodies of work: the 14 R4NT Radio episodes (the magazine’s music podcast, 2008–2010), 5 Audio R4NT pieces (essays read aloud), and a couple of long-form interviews — Fink in 2007 and Coldcut in 2006 — that had originally been published with downloadable mp3s but never an in-page player. All 21 are now wired up as plain HTML5 <audio> elements at the top of their post pages, plus a dedicated /music page with a playlist player that walks through the R4NT Radio back catalogue. The source mp3s were already on disk; the work was unearthing them, normalising filenames (the _().mp3 artefacts a long-ago rsync had left behind), and replacing the dead Flash and RealPlayer markup in each post body.

The audio side: a music podcast wired up as inline players, plus interviews with searchable transcripts.

The audio also got transcripts. A reusable transcription pipeline runs whisper.cpp locally (small.en for fast pre-reads, medium.en for the keepers, large-v3 when accuracy matters), drops the result into the post body as a collapsible <details> block, and writes back through the same admin path as any other edit. The 5 Audio R4NT pieces went through medium.en unattended; the Fink and Coldcut interviews got hand-cleaned passes on top of their machine drafts, since music-journalism interviews are exactly the kind of audio whisper handles least gracefully — proper nouns, label names, gear. Seven posts ship with searchable transcripts inline now.

Video was the bigger lift. The original R4NT shorts — sketches, festival coverage, gear reviews, the lot — had lived on the original site as a wall of “Select a format” download links pointing at MOV / WMV / Flash variants hosted on r4nt.com itself, all long since 404. A dozen of them turned out to have survived as archive.org uploads under the magazine’s account, recovered as roughly 1 GB of original-quality source video. A second pipeline pass re-encodes each to a single browser-playable MP4 (H.264 + AAC, faststart) under media/derived/video/, and a third swaps the old multi-format download markup in each post body for a single responsive <video> element with a poster frame pulled from the post’s first inline image. So Khan Leak, Don’t Drink and Pork, Zombies Make Movies, the JVC HD-GR1 review, and the rest all just play, in-page, on any modern device.

Three of the dozen R4NT shorts pulled back from archive.org and re-encoded for inline playback.

A few clips were beyond saving — Flash-only, never archive.org’d, no extant copy anywhere. Those got their dead “Select a format” markup stripped and a plain note left in place, rather than a broken player.

← Back to About