The Story of This Site
Every portfolio says what someone did. I wanted mine to show who I am — and I am someone who has been staring at the sky since I was seventeen. This is the six-year story of how a bored teenager’s sketch became a flyable solar system.
2020Bored after SPM, looking up
It started right after SPM, in that strange in-between where school is over and life hasn’t started yet. I was bored — properly bored — and the thing that filled the gap was astrophotography. Long nights, a camera pointed upward, and the slow realisation that my ambition literally was the skies.
Somewhere in those nights I drafted an idea: a personal website that wasn’t a page, but a place. A space-based world you could move through. I sketched stations, orbits, a little ship. I had no idea how to build any of it. I just knew I wanted it to exist.
one of the shots that started all of this
2021–2024The three.js years (and the wall)
I tried to learn three.js more than once. I got scenes rendering, made a few small projects, felt like a wizard for a weekend — and then hit the same wall every time: my ambition for this site was enormous, and I was one person juggling an engineering degree, a student association, race teams and volunteer programs. Every attempt taught me something. None of them survived contact with semester week five.
Looking back, those failed attempts weren’t wasted. They taught me what the site shouldn’t be: a tech demo. It needed to be a story first.
2025–2026The AI turn
Then AI-assisted development stopped being a curiosity and became a genuine collaborator. Watching what other developers were building — including a few brilliant 3D portfolios that proved the concept — I realised the wall I’d been hitting for years had a door in it now.
I went through iterations. One version was an F1 race track — you’d drive my career like a circuit. Another was a Mars rover trundling between discoveries. Both were fun; neither was me. Eventually I came back to the 2020 sketch: a living solar system, because that was always the honest answer.
The philosophy I settled on: let the AI carry the code, so I could carry the story. I directed every decision — the world, the tone, the games, what my CV should feel like — and used AI to build at the speed of imagination instead of the speed of my free evenings. The human part of this website is the point: telling a story through games, fun and engagement, not through bullet points.
2025–2026Learning to direct, not just build
The strangest shift wasn’t technical. My job changed from writing code to describing a problem precisely enough that an AI could act on it. PROFILE.md and LINKS.md are the clearest proof: I edit a plain text file of my jobs, awards or links, and the AI propagates it into the site’s data following a sync contract we agreed on once. I never touch the render logic. I just have to get the facts right.
Iteration turned into a conversation instead of a slog. One garage ship, Phantom V, had a wireframe that kept floating just off the hull. The cause was a rotation-order mismatch: the wireframe and the solid hull described “turn this way” through two paths that quietly disagreed. Another time, a layout bug I reported wasn’t a bug at all, the live site was simply running an old deploy. Both taught me that a clear symptom and its real cause are rarely the same story.
That pushed me toward a discipline I didn’t have before: verify, don’t eyeball. Proving a steering feature worked wasn’t a matter of a screenshot, it meant driving the physics loop with fake frames and reading the actual world-space numbers back. Screenshots can look fine and still be wrong. Coordinates can’t.
None of this replaced my engineering instincts, it sharpened them. Describing a problem clearly enough for someone else to solve was the same skill I’d used leading race teams and volunteer projects, I just hadn’t noticed it was transferable until AI gave me a partner who took the description literally.
THEN → NOWHow the site grew up
The first working version shipped fast, and it looked it: glowing wireframes, glow you could see through hulls, a mascot drawn in flat shapes, and an info page that was really a video. Over many rounds I pushed every piece toward one goal: hand-crafted, soft and semi-real, without losing the fun. Here are the before-and-afters. The photos load instantly; tap ▶ on any of them to play with the real thing.
- Ships — wireframe glow → solid, rounded hulls with aircraft nav lights, flowing exhaust, six body finishes and stats you can feel.
- The world — sharp neon platforms → soft islands with parking bays, traffic that lands properly, squadrons, UFOs and a Space Police patrol at the edge.
- Astro — a flat drawing → a 3D robot with 16 outfits, island poses, naps and a startled "!" when you wake him.
- Arcade — 2D canvas mini-games → 3D games flown with your own ship, with levels.
- Info site — a 10-second scroll-scrubbed video → a live 3D landing that never freezes, with a hyperspace jump between the two worlds.
Astro: from a sticker to a friend
The original Astro was a flat drawing that bobbed in the corner and said a random line when clicked. The new one is a real 3D robot who looks at your cursor, changes outfit for each island, falls asleep if you leave him alone and startles awake when you come back.
Ships: from glowing wireframes to solid hulls
The first ships were dark boxes outlined in neon, with engine glow that bled through the body so you could see behind them at some angles. They were rebuilt from smooth, lathed curves: solid hulls, aircraft-style red/green nav lights and strobes, a cockpit you can't see through, and exhaust that flows out of the back. Drag either side to spin them.


The info site: from a video to a live landing
The first info page was a pixel-art rocket film scrubbed by your scroll bar. It looked great in motion but froze the moment you stopped, went soft on big screens, only ran on desktops and weighed 7.9 MB. Its replacement retells the same story in real time: space, clouds, legs out, retro-burn and touchdown. It never stops moving and runs on every device, and if you've changed your ship in the Garage, your ship does the landing.
The world: from neon platforms to soft islands
Early stations were hard-edged neon platforms on a flat grid. They became soft, rounded islands with rocky undersides, landing bays where traffic actually parks, squadrons that fly in formation, UFOs, and a Space Police cruiser waiting for anyone who tries to leave.


HOWHow the pieces came to be
The Dock — a petrol station in space
Every visitor had to arrive from somewhere. A gleaming spaceport felt too grand for a personal site, so I built the opposite: a humble deep-space fuel stop, complete with pumps, a rotating sign and a queue of slightly ridiculous ships (there is a donut. It was important to me that there is a donut). You glide in from the void like everyone else, refuel, and choose where to fly.
The Islands — a CV you can visit
Each chapter of my life became a place with its own architecture: Experience is a tiered command station, Education a constellation, my volunteering years a warm pink commons, my awards a citadel of glass monuments. Reverse-chronological, like LinkedIn — but you travel it.
The Arcade & the game moons
The mini-games are my actual life, reskinned. The Efficiency Run is Shell Eco-Marathon, where I managed a team that squeezed distance out of drops of fuel. The Orbit Tracer is our autonomous RC platform learning to hold a racing line. The Docking Sling is every putt I’ve ever taught as a golf instructor. Astro-Ball and the Bot Sprint exist because flying between islands deserved to be a playground, not a commute.
The Garage & BOLT-3
I spent years designing and printing rare car parts for local garages — machines that fix machines. The Garage is a love letter to that: six hulls with genuinely different physics, a colour bay, XP earned by playing, and BOLT-3, the robotic greeter who has more personality than any of my actual printers ever did.
Astro — the soul of the site
A tiny faceless astronaut who welcomes you, teaches you to fly, wears a jersey when you visit the Arcade and quietly reads a book at the Education constellation. He’s the part of me that never stopped being seventeen and staring up. One day he gets a brain — a mini AI chat guide is on the roadmap.
Two modes — respect for your time
Not everyone wants to pilot a spaceship to read a CV, and that’s fine. The info mode is the same story in plain scrolling form, one hyperspace jump away, with accessibility settings shared across both. Making the fun optional was one of the most deliberate decisions here.
Three.js, hand-tuned vanilla JS, an AI pair-developer, and a six-year-old sketch.
Me — every world decision, every game concept, every word of the story.
Astrophotography nights, race-team logistics, 3D-printer hum, and stubbornness.
Thanks for reading. Now go bump the debris — it’s satisfying.
— Shoandeep