← Build log

Building jahvix.com

A playful company site that still loads fast: throwable app stickers, a 3D workbench, and a logo A/B test that had to be fair.

This site is the home for everything I ship under Jahvix. I wanted it to feel like my desk: a shelf of app icons you can grab and throw, a little 3D workbench, a mug that steams. I also wanted it to load fast on a bad phone connection. Those two goals pull against each other, so most of the work was in the second one.

Small first load

It’s a static Astro site. The first load is about 20 KB of JavaScript, and the CSS is inlined into the page.

The 3D bits use Three.js, which is around 560 KB on its own. It only loads when you scroll near the workbench, and not at all if you’ve asked for reduced motion, turned on data saving, or are on a low-powered device. Those visitors get an illustrated poster instead. The 3D is decoration: every link in it also exists as a normal HTML link beside it.

On Lighthouse’s slow mobile profile it scores 96 for performance and 100 for accessibility, best practices and SEO. On desktop it’s 100 across the board.

A fair logo test

I couldn’t decide between two logos: a hand-written “jahvix” with a scribble, and a particle wordmark where dots form the name, part around your cursor, and burst and reform.

My first particle version was built with Three.js. That would have made the test unfair: visitors who got it would also get a slower page, and I’d be measuring page speed, not the logo. So I rebuilt it in plain Canvas 2D, and both versions load equally fast.

In the end I picked the hand-written one. The particle code is still there if I change my mind.

What’s next

Launch: point the domain at it, add cookie-free analytics, and start writing here properly.