A hand-built studio site in a Swiss "lacquer & stone" style: warm stone paper, lacquer-red accents, thin uppercase type and fine film grain. Every section reacts as you scroll: Halftone portrait that reveals under your cursor
Signature that draws itself, and a manifesto that lights up word by word
The boutique: five project videos with a working till. Reach the end and the receipt prints PAID
3D paper crumple: the receipt folds into a real 3D ball and drops into the page with physics
"A Day in Code": an original stick-figure film drawn in code. The ball lands inside it and gets a bicycle kick
Generative synth music and cartoon sound effects, all made live in the browser
AI-style assistant in a glowing WebGL orb, available in six languages
Built with: Vanilla JavaScript · Vite · GSAP + ScrollTrigger · Lenis smooth scroll · Three.js (3D crumple and cart) · Matter.js (physics) · WebGL shaders · Web Audio API · Web Workers · Vercel
The 3D crumple runs in a Web Worker and only the video on screen plays, so it stays smooth at 60fps.
Five Logo Directions for a Health App — Logo Design & Motion
Five logo directions for a healthcare app that people trust with their medical records and their money.
I gave myself strict rules: each logo has to work at 16 px and at app-icon size, in one colour, and without the usual clichés (no shield, cross, heart or checkmark).
In the video, each logo builds in its own way, then you see it at every size and inside a real product: app icon, browser tab, notification.
I did the concept, the logo design and the animation.