From a90bafa87c076a8fe04c91a49c75f4b4963ccfe8 Mon Sep 17 00:00:00 2001 From: Tyler Hoang Date: Fri, 5 Jun 2026 01:30:38 -0700 Subject: rebrand site to trainytrain.xyz; update films/up subdomains Co-Authored-By: Claude Sonnet 4.6 --- CLAUDE.md | 2 +- aero.js | 2 +- enter.html | 2 +- index.html | 16 ++++++++-------- index.js | 8 ++++---- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index c8c8c62..2e187ae 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co ## What this is -A static personal website at `fun.tylerhoang.xyz` styled as a retro desktop OS. There is no build system, no framework, no package manager. Everything is plain HTML/CSS/JS served directly by a web server. +A static personal website at `trainytrain.xyz` styled as a retro desktop OS. There is no build system, no framework, no package manager. Everything is plain HTML/CSS/JS served directly by a web server. ## Development diff --git a/aero.js b/aero.js index f20861e..15aaae2 100644 --- a/aero.js +++ b/aero.js @@ -275,7 +275,7 @@ async function fetchLastFm(user = 'trollshotlol', key = 'e4d5c973811037717f7603f } async function fetchFilms() { - const r = await fetch('https://films.tylerhoang.xyz/tyler/api/recent'); + const r = await fetch('https://films.trainytrain.xyz/tyler/api/recent'); if (!r.ok) throw new Error('films ' + r.status); return await r.json(); } diff --git a/enter.html b/enter.html index f82971e..0a2f355 100755 --- a/enter.html +++ b/enter.html @@ -183,7 +183,7 @@
-

fun.tylerhoang.xyz

+

trainytrain.xyz

a quiet little corner of the web — banker by day, jazz pianist by night, linux sysadmin in the in-between. come on in.

enter
diff --git a/index.html b/index.html index e3bf8ee..8f07e4e 100755 --- a/index.html +++ b/index.html @@ -103,11 +103,11 @@
home lab status · auto-poll 30s
drive.tylerhoang.xyz
Nextcloud
-
up.tylerhoang.xyz
Jenniesafe
+
up.trainytrain.xyz
Jenniesafe
git.tylerhoang.xyz
cgit
tylerhoang.xyz
portfolio
-
fun.tylerhoang.xyz
this site
-
films.tylerhoang.xyz
film diary
+
trainytrain.xyz
this site
+
films.trainytrain.xyz
film diary
reelmouth.tv
on hiatus
*.onion mirrors
tor
@@ -174,7 +174,7 @@ - fun.tylerhoang.xyz — Notes + trainytrain.xyz — Notes
🔒 - https://fun.tylerhoang.xyz/articles + https://trainytrain.xyz/articles
@@ -266,7 +266,7 @@
Done - 🔒 fun.tylerhoang.xyz · 100% + 🔒 trainytrain.xyz · 100%
diff --git a/index.js b/index.js index bec056d..8975171 100644 --- a/index.js +++ b/index.js @@ -287,7 +287,7 @@ a.plainTitle = a.title.replace(/<[^>]+>/g, ''); }); const ARTICLE_INDEX = Object.fromEntries(ARTICLES.map(a => [a.slug, a])); - const HOST = 'fun.tylerhoang.xyz'; + const HOST = 'trainytrain.xyz'; const browserHistory = { stack: [], idx: -1 }; function fmtDate(iso) { @@ -352,8 +352,8 @@ const isArt = /^\/articles\/[a-z0-9-]+$/.test(path); const slug = isArt ? path.split('/').pop() : null; const titleTxt = isArt && ARTICLE_INDEX[slug] - ? `${ARTICLE_INDEX[slug].plainTitle} — fun.tylerhoang.xyz` - : 'Notes — fun.tylerhoang.xyz'; + ? `${ARTICLE_INDEX[slug].plainTitle} — trainytrain.xyz` + : 'Notes — trainytrain.xyz'; document.getElementById('br-title').textContent = titleTxt; document.querySelectorAll('.browser-bookmarks .bm').forEach(bm => { bm.classList.toggle('active', bm.dataset.go === path); @@ -366,7 +366,7 @@ const page = document.getElementById('br-page'); const status = document.getElementById('br-status'); const progress = document.getElementById('br-progress'); - status.textContent = `Contacting fun.tylerhoang.xyz…`; + status.textContent = `Contacting trainytrain.xyz…`; progress.style.display = 'block'; progress.querySelector('.progress-bar').style.width = '20%'; setTimeout(() => { -- cgit v1.3-2-g0d8e