Isle
Exceptional
More sections
Explore the collection
- NewFluid GalleryA moody, cinematic image collection — prismatic eye close-ups, long-exposure silhouettes and reaching hands — grouped into three moods (Light, Drift and Reach) and chosen to glow in both light and dark mode (darker frames get a per-photo exposure lift so they never sink into the dark canvas). A clean canvas is washed with soft ambient shadows like sun through a window — a soft shadow up top, shadowed left and right edges, bright vertical light streaks between (warm white in light, deep slate in dark); the images float on it with no drop shadow of their own — the shadow lives in the background. Every card is a plane in a single WebGL scene (an orthographic pixel camera with a rounded-rect SDF mask, so there is no DOM per card — the canvas paints them and JS hit-tests the pointer). It opens with a clean entrance — the images scale up, un-blur and rise into place, staggered as each decodes, with no placeholder flash. Scrolling is captured — the wheel or a touch drag never moves the page on, it just cycles the gallery on a diagonal: the next image waits small and rotated in the bottom-right corner, glides to centre stage to become the main, then exits to the top-left corner as the one after it rises in — looping forever in both directions with no dead-end. Hover a card and a liquid blob ripples and refracts just under the cursor, in the hovered corner — the only fluid left in the scene. Click and the image swings open from its exact rect to full-bleed with a 3D perspective tilt — rotating in tilted, then flattening face-on — its rounded corners melting from a soft squircle to a sharp edge, and only once it lands does its plate fade in: the mood, the title, a one-line note, and the technique · year. Click anywhere or Esc to swing it back the same way (mirrored). Three.js owns the scene and image textures (streamed through a small concurrency pool so the open never janks); GSAP tweens each card's morph and the entrance; one rAF clock drives the shader time, the scroll switch, hover easing and the background drift. The loop pauses in hidden tabs, pixel-ratio is capped, and the GL context is fully disposed on unmount.
- NewDesk 95A pixel-perfect Windows 95 desktop reimagined as a portfolio hero. Boots through a brief BIOS sequence into a teal #008080 wallpaper with chunky 3-D bezels, navy title bars, MS-Sans-Serif-style typography, and the unmistakable dotted-outline window drag of Win 3.1/95 — only a 1-px-dashed marquee tracks the cursor; the window snaps to that position on release. Ten draggable project files (NOIR_LEATHER.EXE, KESTREL_FW.EXE…) sit along the desktop and open into a Win95-chrome project viewer with hero photo and a Challenge / Direction / Outcome brief. A system column on the right carries My Computer, Recycle Bin, Notepad (a working textarea with the designer's CV), Calculator (a real working standard-mode calc), and an Inbox icon. The bottom taskbar carries a Start button with a 16-px multicoloured flag, a click-through Start menu (Programs / Documents / Settings / Find / Help / Run / Shut Down…), one button per open window with pressed/raised states, and a live clock. Z-order, focus, and minimise all match the original. Mobile gracefully falls back to a static "Welcome to Desk 95" tile under 1024 px.
- NewPantheonA full-bleed gallery that turns. Each master floats at centre inside a circular liquid-glass medallion — a real Snell's-law lens that refracts their masterpiece behind it at the rim — ringed by a gilt laurel wreath, their name set large in Playfair below with lifespan, movement, and the work on show. The rest of the cast curve away to the sides, smaller and drained to monochrome. Wheel over the stage, drag, tap the chevrons or pips, press the arrow keys — or simply wait — and the ring revolves: the next master glides to centre and blooms back into colour, the laurel transfers to them, the painting cross-fades to their work, and the name re-sets with a soft blurred rise. Seven public-domain icons — David's Napoleon Crossing the Alps, the Mona Lisa, The Starry Night, The Great Wave, The Kiss, the Birth of Venus, the Night Watch — each shown with the artist's own portrait. One displacement map, baked once for the medallion box and shared by every lens via a single SVG filter, keeps the optics physically real on Chromium; Safari and Firefox fall back to a frosted rim. A patient auto-advance pauses on interaction and resumes on idle; theme-aware museum staging (near-black in dark, warm white-cube in light); honours prefers-reduced-motion.
- NewBenchmarkAn Apple-Keynote performance slide turned into a living section, split roughly 38 / 62 horizontally — figure on the left, claims on the right. On the left, a giant Poppins figure (80%, 5×, 2.4M, 99.9%) each number carries its own static radial gradient — varied hues over one shared structure (a bright origin pushed below the glyphs so no hot dot shows) — clipped to the digits, under a small mono 'source' tag. On the right, a vertical column of one-line SaaS claims sits under a focus lens: only size and colour change with distance — only the single centred claim is dark (#010102) and large, every other claim a flat grey (#636365); size still falls off smoothly with distance, with no blur and a constant font weight. The list steps one claim at a time with an expo.inOut snap, dwelling while each claim sits aligned with the figure, then snapping to the next — an endless, snappy auto-cycle; whichever claim owns the centre drives the figure, which rebuilds with a scale + y snap (no blur, expo.out) as the number changes. A wheel notch or touch drag steps it manually and pauses the cycle; after a short idle the auto-cycle resumes — gated to when the cursor is over the section so the page scrolls normally elsewhere. One rAF clock owns the per-row transforms and the gradient while a GSAP expo.inOut tween owns the stepped position; React only re-renders the one discrete bit — the focused claim, which the figure renders straight off, so number and claim can never drift apart. A fixed light palette (#F2F2F4), a screen-reader list of the real stats, a live tuning panel (timing, sizes, lens) on ?tune=1, and prefers-reduced-motion that holds each claim still while keeping manual stepping.