v30

The dock, a changelog, and v29 back

FeatureDesignFix

The dock, a changelog, and v29 back, as it looked at 6555e52f

View this deployment live ↗ · 6555e52f

  • The socials are now a dock, ported from Magic UI: icons grow as the pointer comes near them, each with a label.
  • This changelog: every production deployment, each still live at its own address, opened from the new button in the card’s top-right corner.
  • The bun & pup store card and its connector lines are gone.
  • Discord status never reads “status unavailable” any more: it shows online, idle, do not disturb, or offline with when you were last seen.
  • Everything from v29 is live again: the once-a-day view counter and the music that keeps playing when you switch tabs.

v29

Fill the bottom, count once, keep the music

FixMobile

Fill the bottom, count once, keep the music, as it looked at a3c019ea

View this deployment live ↗ · a3c019ea

  • On phones the empty space under the composition is spent on stretching connector lines.
  • The view counter counts a device once a day instead of again on every tab switch.
  • Switching tabs no longer mutes the music.

Maintenance page

Maintenance

Maintenance page, as it looked at a2f81707

View this deployment live ↗ · a2f81707

  • The black updating… page, put up with the stop button on the Discord site dashboard.
  • Put up on August 28. The v29 deploy below went out while it was still up.

Maintenance page

Maintenance

Maintenance page, as it looked at e0f94d0b

View this deployment live ↗ · e0f94d0b

  • The black updating… page, put up with the stop button on the Discord site dashboard.
  • A maintenance build that was never the one restored.

Maintenance page

Maintenance

Maintenance page, as it looked at 5df82c06

View this deployment live ↗ · 5df82c06

  • The black updating… page, put up with the stop button on the Discord site dashboard.
  • Stop and continue pressed back to back from the dashboard.
v28

Shirt panel sized to its content

MobileFix

Shirt panel sized to its content, as it looked at 22882643

View this deployment live ↗ · 22882643

  • On phones a fifth of the store card was empty space; it is sized to its content again.
v27

The tilt stops eating clicks

Fix

The tilt stops eating clicks, as it looked at 89057b20

View this deployment live ↗ · 89057b20

  • The card holds still while a button is pressed, so clicking the shirt works while it is moving.
v26

Performance pass

Performance

Performance pass, as it looked at 6a1464db

View this deployment live ↗ · 6a1464db

  • The film re-encoded from 1080p60 (17.9 MB) to 720p30 (7.39 MB): about a fifth of the decode work, with no visible difference.
  • Two zero-blur backdrop filters removed; the film is skipped entirely on Save-Data and 2G.
v25

TikTok handle

Content

TikTok handle, as it looked at d9e20530

View this deployment live ↗ · d9e20530

  • The TikTok link now points at @die1635.
v24

Room to breathe on phones

MobileDesign

Room to breathe on phones, as it looked at bff7e876

View this deployment live ↗ · bff7e876

  • Wider gutters, more card padding and bigger gaps on phones; the store card lines up with the card above it.
v23

Security headers and one tint

SecurityDesign

Security headers and one tint, as it looked at 8c7562a8

View this deployment live ↗ · 8c7562a8

  • HSTS, COOP, CORP, DNS prefetch off, and frame-ancestors none.
  • The player, widgets and store card on one shared tint, a Roblox tag beside the Discord one, and two animated connector lines to the store card.
v22

Two mobile fixes

MobileFix

Two mobile fixes, as it looked at 1e922a7c

View this deployment live ↗ · 1e922a7c

  • The music button no longer overlaps the card on phones.
  • The faded-out cover no longer stays on top swallowing every tap and scroll.
v21

Measured against the reference

Design

Measured against the reference, as it looked at 0166dfce

View this deployment live ↗ · 0166dfce

  • The card rebuilt from a live render of the reference: 44rem wide, a 120px avatar, a badge pill, Poppins throughout.
  • The film shown at 100%, a fully transparent card, and a slow parallax tilt ported from react-parallax-tilt.
  • View Profile rebuilt as the same button as buy; nothing in the card is selectable.

v20

Profile card, first full version

Design

Profile card, first full version, as it looked at f486e1e8

View this deployment live ↗ · f486e1e8

  • The card as one container: header, two live widgets, socials and a footer, with the store card underneath.
  • The Roblox call-to-action in green.
v19

Card styling pass

Design

Card styling pass, as it looked at 2cb2c402

View this deployment live ↗ · 2cb2c402

  • More card polish ahead of the full rework.
v18

Card styling pass

Design

Card styling pass, as it looked at e9a11ef1

View this deployment live ↗ · e9a11ef1

  • Spacing and proportion fixes on the new card.
v17

Live Discord presence

Feature

Live Discord presence, as it looked at b2d71908

View this deployment live ↗ · b2d71908

  • New /api/presence: the Discord bot pushes a status into KV, and the card shows online, idle, do not disturb or offline, checked every second.
  • Discord and Roblox sit side by side as two widgets inside one card.
v16

The profile card arrives

FeatureDesign

The profile card arrives, as it looked at 56db5fc0

View this deployment live ↗ · 56db5fc0

  • A guns.lol-style profile card with badges, live Roblox friends and followers from /api/profile, the view count and the location.
v15

A view counter that counts visitors

Feature

A view counter that counts visitors, as it looked at f4bceccd

View this deployment live ↗ · f4bceccd

  • New /api/hit: the homepage itself counts one view per visitor per day. Before this, only the owner opening the dashboard moved the number.
v14

Stats follow-up

Fix

Stats follow-up, as it looked at 1419a479

View this deployment live ↗ · 1419a479

  • A version bump and a redeploy of the gated stats.
v13

Stats behind a password

Security

Stats behind a password, as it looked at 6c0af773

View this deployment live ↗ · 6c0af773

  • /api/stats now answers 401 without the dashboard password.
v13

Stats dashboard follow-up

Fix

Stats dashboard follow-up, as it looked at 692e1e2b

View this deployment live ↗ · 692e1e2b

  • A redeploy of the stats functions; the homepage is unchanged.
v13

Stats dashboard follow-up

Fix

Stats dashboard follow-up, as it looked at a84e871c

View this deployment live ↗ · a84e871c

  • A redeploy of the stats functions; the homepage is unchanged.
v13

Stats dashboard follow-up

Fix

Stats dashboard follow-up, as it looked at 91424912

View this deployment live ↗ · 91424912

  • A redeploy of the stats functions; the homepage is unchanged.
v13

Homepage markup tweak

Fix

Homepage markup tweak, as it looked at 2376c7f0

View this deployment live ↗ · 2376c7f0

  • A small change to the homepage markup while the stats work continued.
v13

Stats dashboard follow-up

Fix

Stats dashboard follow-up, as it looked at 4d2cb430

View this deployment live ↗ · 4d2cb430

  • Another redeploy of the stats work; the homepage is unchanged.
v13

Stats dashboard follow-up

Fix

Stats dashboard follow-up, as it looked at 285066c6

View this deployment live ↗ · 285066c6

  • A redeploy while the dashboard was being tuned; the homepage is unchanged.
v13

Stats dashboard

Feature

Stats dashboard, as it looked at 52fe7c36

View this deployment live ↗ · 52fe7c36

  • A private /stats page and /api/stats endpoint: views and people on the site right now, per deployment.

Maintenance page

Maintenance

Maintenance page, as it looked at 46e1f361

View this deployment live ↗ · 46e1f361

  • The black updating… page, put up with the stop button on the Discord site dashboard.
  • Put up and taken down again the same evening.
v13

Offline cache fix

Fix

Offline cache fix, as it looked at fd2d3ceb

View this deployment live ↗ · fd2d3ceb

  • The offline page now really lands in the service-worker cache.
  • The background aura stops looping for people who ask for reduced motion, and the buy button gets a full-size touch target.
v13

System pages and offline mode

FeatureSecurity

System pages and offline mode, as it looked at b3072c12

View this deployment live ↗ · b3072c12

  • Custom 404, 500 and offline pages in the site’s own look.
  • A loading state, a service worker, and a strict Content-Security-Policy.

Maintenance page

Maintenance

Maintenance page, as it looked at 17d4801f

View this deployment live ↗ · 17d4801f

  • The black updating… page, put up with the stop button on the Discord site dashboard.
  • The first real test of the site-control bot: stop took 7.4 s, and continue restored the site byte for byte in 0.8 s.

latelight redesign (rolled back)

RedesignRolled back

latelight redesign (rolled back), as it looked at 7c834780

View this deployment live ↗ · 7c834780

  • A cinematic single-screen redesign built on personal photographs.
  • Live for about twenty minutes, then rolled back at the owner’s request. Kept here because it is still viewable at its own address.
v12

New avatar and the Alt+Tab fix

FixMedia

New avatar and the Alt+Tab fix, as it looked at 891d2177

View this deployment live ↗ · 891d2177

  • New profile picture (the bunny); the icon is recompressed from 46 KB to 28 KB.
  • Alt+Tab, Ctrl/⌘ shortcuts and F-keys no longer open the cover and start the music by themselves.
  • The dot-field canvas gets a pixel budget, so a 4K screen costs 13 MB instead of 126 MB.
v11

Projects become a store

StoreDesign

Projects become a store, as it looked at b0ef899e

View this deployment live ↗ · b0ef899e

  • The projects section is replaced by one product: the bun & pup Roblox shirt.
  • Name, tagline and buy button set in hand-lettered artwork; the render opens in the lightbox.
  • Shown on phones too.
v10

The phone becomes a profile

MobileDesign

The phone becomes a profile, as it looked at 8755f15c

View this deployment live ↗ · 8755f15c

  • Phones show the avatar, wordmark, socials and player only; the projects section stays on desktop.
  • The page fits one screen on every phone size tested, which also makes the film sharper there.
v8

Mobile crop

Mobile

Mobile crop, as it looked at 026155d0

View this deployment live ↗ · 026155d0

  • On phones the film is framed at 58% across instead of dead centre, chosen from 215 sampled frames so the crop never lands on empty sky.
v7

Loop fades

Media

Loop fades, as it looked at d7a084ec

View this deployment live ↗ · d7a084ec

  • The film fades out and back in at the loop point, so the wrap is black meeting black instead of a hard cut. Nothing was trimmed.
v6

New film, new avatar

MediaDesign

New film, new avatar, as it looked at d6e1112d

View this deployment live ↗ · d6e1112d

  • New background film (an anime edit by @fantasy.zip), whose own audio becomes the soundtrack.
  • New profile picture; the favicon and share image follow it.
  • The cover now reads click anywhere in lowercase, with a credit line underneath.
  • Every versioned asset levelled to one number so they can never drift apart again.

v9

Player polish

Design

Player polish, as it looked at b33b991c

View this deployment live ↗ · b33b991c

  • Last of the same-day player follow-ups.
v8

Player polish

Design

Player polish, as it looked at a5873321

View this deployment live ↗ · a5873321

  • Follow-up tweaks to the simplified music toggle.
v5

Volume slider removed

Design

Volume slider removed, as it looked at 6b6bbb29

View this deployment live ↗ · 6b6bbb29

  • The music pill loses its slider and becomes a single mute/unmute toggle.
v4

Asset versioning

Performance

Asset versioning, as it looked at 42514f6e

View this deployment live ↗ · 42514f6e

  • Versioned asset URLs (?v=) so returning visitors pick up new files instead of stale cached ones.
v3

Mobile fixes

MobileFix

Mobile fixes, as it looked at aa3b3caf

View this deployment live ↗ · aa3b3caf

  • Phone layout fixes; the page can scroll on a phone instead of trapping overflow out of reach.
v3

First deployment

Launch

First deployment, as it looked at fe954529

View this deployment live ↗ · fe954529

  • preinfection.lol goes live on Cloudflare Pages: avatar, wordmark, the six-icon social pill and the two-column projects section.
  • Full-screen background film behind a click anywhere cover, with the film’s own audio as the soundtrack.
  • Glass panels, a white sparkle sheet behind the wordmark, and a music pill with a volume slider.