bt

About

bt's personal site — a blog, an arcade, and a bunch of homemade toys. Open source, no ads, no tracking.

👋 I'm bt

A student, an INTP, majoring in slacking off — this site is the toy I tinker with instead. No positioning, no roadmap: whatever comes to mind goes up — study notes, hand-built games, self-hosted services, and one crab.

Everything here runs in my own hands: the blog is a static Astro site on Cloudflare Pages, comments and likes are self-hosted, and even the AI answering you is trained by myself. No analytics, no ads, no cookie banners.

🧨 Two games that use real pages as levels

The two freshest ones in the arcade. They don't ship new levels — they turn real web pages into the game world. On-site pages work natively; any other URL gets proxied into same-origin by a self-built mirror (SSRF-guarded, no cookies collected).

  • Destroy this site — clawd drops from the sky onto the page: elements with text are both platforms and targets, chipped away in 28px tiles with characters scattering letter by letter. S/↓ descends one text line, Space jumps, W/↑ rocket-thrusts, 8 pixel weapons (pistol / SMG / shotgun / sniper / grenade / rocket / laser / BFG). Pure demolition, no win condition.
  • clawd ball — clawd becomes a ball rolling 360° across the page; elements smaller than the ball stick to its surface and spin along, the ball grows, and at 80% coverage the whole site is rolled up.

Tech: the Range API measures per-character positions to build tiles (empty space is air, so the character never floats); cross-site pages go through a functions/api/mirror proxy (base injection, asset rewrite, XFO/CSP stripping, SSRF guard). Inspired by spritefusion's destroy easter egg, the MIT-licensed website-breaker, and Katamari Damacy.

🎮 Arcade

Games in the top nav leads to the arcade (/games/) — all open source, free, self-hosted:

  • Destroy this site — destruction sandbox, real page as the level (desktop)
  • clawd ball — Katamari prototype, real page (desktop)
  • Airplane War — bullet-hell shooter, touch playable
  • Big Eats Small — agar.io single-player, touch patched
  • Suika Game — the viral watermelon merge
  • Transport Ship · CF 3D — classic CF map in 3D
  • Pelican on a Bike — casual 3D
  • Speed Drift 3D — QQ Speed fan racing
  • Pixel Monster Battle — hand-drawn pixel RPG
  • Celeste — web port (desktop), PICO-8 original (mobile)
  • Mini Games ×124 — open-source collection (external)

Clawd, the desktop pet

The crab friend in the bottom-right corner. You can:

  • Click — jump straight to the chat page, /chat/
  • Double-click — make it talk to you (no navigation)
  • Drag — move it around (desktop only)
  • It also speaks up on its own every 2 minutes, with 25+ bt-themed lines

💬 Chat

The Chat item in the top nav and clicking Clawd both lead to the same page.

The one answering is a 64M MiniMind model bt trained himself — the persona is bt: an INTP who'd rather slack off. With only 64M parameters and a 6,400-token vocabulary it gets facts wrong all the time; don't use it as a search engine.

📮 Mome

The Mome item in the top nav is an external link to mome.bingtao.xyz — a self-hosted micro-timeline running the open-source Ech0.

  • Post whatever comes to mind — much lower barrier than a full article
  • No account needed to read or like
  • Comments are open but moderated

🎵 Claude FM & Drone Zone

The Gadgets page hosts two radio streams:

  • Claude FM — 24/7 Lo-fi & Ambient
  • 🌑 Drone Zone — SomaFM dark ambient space music

📸 Telegraph image host

The click it button at the bottom of the Gadgets page links to a self-hosted Telegraph image host.

  • No sign-up, upload and go
  • For sharing images, screenshots and memes with me
  • Click → upload → copy the link → send it to me

🌙 Theme & language

Theme — the 🌙/☀️ button in the top bar toggles dark/light (dark by default); the preference is saved and shared with the arcade.

Language — the three-way switch on the right of the header: 中 / EN / (´・ω・`).

  • EN — real English pages (/en/), articles translated offline by argos-translate, no online translation services
  • Kaomoji — sprinkles random kaomoji after punctuation on the current language, purely local

🛠 Colophon

  • Framework — Astro 6 + Tailwind CSS 4, statically generated, deployed on Cloudflare Pages
  • Fonts — Oswald + Courier Prime, self-hosted, zero third-party requests
  • Math / code — KaTeX + Expressive Code (dual themes)
  • Games — native Canvas / DOM, zero dependencies, no build step
  • Credits — micro-timeline based on Ech0 (AGPL-3.0); destruction shattering inspired by the MIT-licensed website-breaker
  • Privacy — no analytics, no tracking, no ads, no cookie banners