Pond
View Live →Pond is an AI assistant that works across a person's whole day - inbox, calendar, tasks, files, research - instead of answering one question at a time. The site had to make that idea feel calm rather than technical, so the product is introduced by a character: a hand-sculpted 3D frog, rendered live in the browser, that follows your cursor and blinks while you read. Built as vanilla HTML, CSS and JavaScript on Three.js, with no UI framework.
The Brief
Pond needed a home page that could explain an AI assistant without sounding like every other AI landing page. The product's own promise is calm - it stays quiet until something matters - so a site full of urgent gradients and benefit-bullets would have contradicted the thing it was selling. The answer was to lead with a character instead of a claim, and let the page earn its explanations slowly.
Everything in your day, working like one pond.
The Frog
The mascot was sculpted in Blender and exported as a packed binary mesh, then rebuilt in the browser as a skinned two-bone rig. Gaze is the whole trick: a pointer and keyboard tracker rotates the head bone while the eyes, parented to that bone, aim slightly ahead of it - so he leads with his eyes and the head follows, the way a real animal does. Blinks fire on a loose timer so he never looks mechanical. An in-memory softbox rig lights the eyes, which is what gives the pupils their wet highlight.
Built for the browser, not a video
The mesh ships as a 5.8MB binary decoded straight into typed arrays - float32 positions, int16-packed normals, uint8 colours - so there is no glTF parser and no loading spinner dressed up as a feature. One render loop drives everything on the page.
Quiet when it should be
Gaze short-circuits under prefers-reduced-motion, and the full-page water overlay bails out entirely on touch devices and reduced-motion. The accessibility gates are wired into the modules themselves rather than bolted on at the end.
Water Over The Whole Page
A full-viewport canvas sits above the entire site running a live wave simulation. Your cursor leaves a wake, clicks drop splashes, and a mosquito drifts around the pointer. The hard part was making it invisible when idle: the render pass drives alpha from the height gradient rather than painting a background, so flat water is fully transparent and the page underneath stays readable. The overlay never takes pointer events - every listener is bound to the window - so links, scrolling and focus all keep working underneath it.
Showing The Product, Not Describing It
Two sections do the actual selling. An interactive dashboard mockup gives visitors something to click - six sidebar pages, a working light and dark toggle, a chat launcher, and an Approve / Not now pair on every feed item so the Trust section's promise is visible rather than stated. Below it, an animated terminal shows Pond's background watches doing their work in something that reads like code but stays in plain language.
The Page
Seven sections from the live site: the hero, the koi-filled Ask once chapter, the interactive dashboard, the watch terminal, the five-step explainer, the trust chapter and pricing. Click any of them to open it full size.
How the page is put together
Lead with the character
The frog lands before a single feature is named. By the time the first explanation arrives, the visitor has already played with him.
Show it, do not describe it
A night-lit section runs the same six situations the dashboard shows, so the two halves corroborate each other. Both the mockup and the watch terminal are clickable - proof beats a captioned screenshot.
Answer the objection
A Trust chapter handles the real hesitation about an assistant with access to your inbox: choose what it touches, approve what matters, pause anytime.
Ask once, calmly
Pricing and early access sit at the end, in the same quiet voice as the rest of the page.
The Constraint
Vanilla HTML, CSS and JavaScript bundled with Vite, and Three.js as the only runtime dependency. No React, no TypeScript, no CSS preprocessor. On a site whose entire job is one long scroll and one 3D scene, a framework would have added weight and a build story without making anything on the page better - and every kilobyte competes with a 5.8MB mesh that actually earns its place.
Want one like this?
Want a site like this - or Pond itself?
This build is available. I take on commissions for sites with this kind of interactive 3D work, and Pond - the website and the product - can be bought outright. Tell me which one you are after and I will come back with scope and a number.
Based in South Africa · working with clients anywhere






