🏗️ Tower Block - My Browser Love Letter to Tower Bloxx
This started with a dangerous combo: late-night Instagram doomscroll + a reel of an ancient Nokia-looking phone running Tower Bloxx. Fifteen minutes later I was digging up childhood muscle memory, and a few hours after that I had a browser version swinging a crane on Canvas.
🎉 The goofy backstory
- Saw the reel, instantly heard the old “boop” drop sound in my head.
- Opened VS Code “just to sketch it”… exited VS Code at 3 AM with a PWA and a wobbling tower.
- No engines, no libraries; just vanilla JS, Canvas, and questionable life choices.
🕹️ What’s inside (in one night)
- Swing → drop → land with sine easing and tiny instability math so it sways but doesn’t yeet itself.
- Sky that reacts: morning to night to space, with clouds/birds/planes before the stars and planets show up.
- Juice without sprites: particles, floating text for “Perfect!”, Web Audio blips, and a local best-score trophy in
localStorage. - PWA polish: service worker + manifest so you can “install” it and brag offline.
🤸♂️ Play vibe
- Missed your timing? Lose a life, hear the sad sawtooth “oof,” and try again.
- Nailed the drop? Particles pop, “Perfect!” floats up, and instability chills out.
- Keep stacking until you hit space and a very extra glowing sun.
📦 Quick tech notes
- Plain JS + Canvas (no physics engine), hand-rolled collision offsets and sway.
- Atmosphere stages keyed to tower height; seeded starfield to avoid flicker.
- Touch + keyboard controls with debouncing so spacebar spam doesn’t drop two blocks.


