Skip to content
Swil
  • Writing
  • Work
  • Vibe
  • Lab/lab3D scenes, a playable piano, the solar system.
  • 3D Models/modelsModels you can turn and look around.
  • Music/musicA listening room, an aespa archive and a piano.
  • Terminal/terminalA small command line in the browser.

Things to click, turn and listen to.

  • Planner/tools/workA week of tasks with a focus timer.
  • Image editor/tools/image-editCrop, resize and adjust in the browser.
  • Typing/tools/typingA typing trainer.
  • All tools →/tools

Small tools I use myself, all in the browser.

  • Finuwell↗finuwell.comAn atlas of how the body works.(opens in a new tab)
  • Swil News↗news.supwil.comAI and tech news, updated daily.(opens in a new tab)
  • SwirlRead↗swirl-read.vercel.appA Markdown reader for a notes folder.(opens in a new tab)

Separate apps I built, each on its own site.

  • Resources/resourceTools and reading I keep going back to.
  • Perf/perfThis site's own measurements.
  • Changelog/changelogWhat changed on the site, and when.

Reading I go back to, and how this site is measured and changed.

Writing/blogWork/projectVibe/vibe

Explore

Lab/lab3D scenes, a playable piano, the solar system.3D Models/modelsModels you can turn and look around.Music/musicA listening room, an aespa archive and a piano.Terminal/terminalA small command line in the browser.

Planner/tools/workA week of tasks with a focus timer.Image editor/tools/image-editCrop, resize and adjust in the browser.Typing/tools/typingA typing trainer.All tools →/tools

Finuwell ↗(opens in a new tab)finuwell.comAn atlas of how the body works.Swil News ↗(opens in a new tab)news.supwil.comAI and tech news, updated daily.SwirlRead ↗(opens in a new tab)swirl-read.vercel.appA Markdown reader for a notes folder.

Resources/resourceTools and reading I keep going back to.Perf/perfThis site's own measurements.Changelog/changelogWhat changed on the site, and when.
— Lab · Experiments

Lab

Interactive toys and visual experiments — the parts of this site that only make sense in motion.

01
Three.js · R3F · postprocessing

Solar System

A navigable 3D solar system where every body maps to a slice of my work — keyboard-driven, bloom-lit, with a live telemetry HUD.

Enter→
02
Three.js · GLSL · Clipmap · Gerstner

Black Pearl

A dark galleon riding a clipmap ocean — per-pixel waves, a Kelvin wake and persistent whitecaps, with the hull floating on the very field the sea draws.

Enter→
03
Tone.js · Web Audio · Canvas

Never See Me Again

A playable piano that renders its own bloom in real time. Let it loop, or drop in a MIDI file and watch it breathe.

Enter→
04
SVG · CSS · WebGL

Skills Orbit

One skill map, three renderings — a flat plane, an angled 2.5D view, and a full 3D turntable you can spin.

Enter→
05
React · command REPL

Terminal

Type your way through the site. Run whoami, projects, blog, or sudo hire-me — a portfolio you drive from a prompt.

Enter→
06
R3F · Draco glTF · 3DGS

Model Gallery

Mesh models and Gaussian-splat captures in one demand-rendered viewer — with a perf HUD that prices every frame.

Enter→

Site

  • Home
  • Writing
  • Work
  • Vibe
  • RSS

Playground

  • Lab
  • 3D Models
  • Music
  • Terminal

Tools

  • Planner
  • Image editor
  • Typing
  • All tools→

Apps

  • Finuwell↗
  • Swil News↗
  • SwirlRead↗

More

  • Resources
  • Perf
  • Changelog

Elsewhere

  • GitHub
  • LinkedIn
  • Bilibili
  • Email

Huahao Shang, 2026 · Privacy

Built with Next.js · measured at /perf