// ets27 · inspiration · teardowns

Site teardowns

Each site the owner shared, taken apart: the stack with evidence, the components he liked as playbooks with selectors, computed styles, timings and a rebuild recipe, screenshots of every state, and frame bursts of the transitions. A verifier tried to refute each teardown and corrected it in place; what stayed unconfirmed is listed in each playbook.

Burn Studio, Spain

None: hand-written jQuery 3.6.0 scripts (helpers, observerprojects, clock, main, ajax, player), no bundler; jQuery UI 1.14.1 for draggable only, Kirby (PHP 8.1.34 on Apache), custom AJAX routes /ajax/<lang>/<id>/<slug> returning JSON, Native; scroll bars …
drag-01-handle-hoverdrag-02-mid-helddrag-03-mid-held-2drag-04-releaseddrag-05-moved-menu-hover-pilldrag-06-contained-corner
116 shots · playbook · component.json · site

Büro (Bürocratik), Portugal

Nuxt 2 static generation (Vue 2.7.16, vue-router 3.6.5, vue-meta 2.4.0, webpack 4); build id 1791840994 = 2026-10-12 21:36 UTC, Sanity (cdn.sanity.io images, burocratik.sanity.studio in CSP frame-ancestors, ?preview plugin), Lenis 1.0.42 on window, …
bar-01-rest-eyes-over-herobar-02-pointer-on-barbar-03-hover-plusbar-04-scrolledbar-05-window-blur-messagebar-bot-roll-slowmo-strip
36 shots · playbook · component.json · site

Clever°Franke

Next.js 12.3.1 (pages router, getStaticProps) on React 18.3.1, hosted on Vercel, Sanity (project bgm3v1ft, dataset production; studio framed from cms.cleverfranke.com), none: the cloud sets body overflow hidden; html scroll-behavior smooth; no …
d01-arrival-bannerd03-restd10-orb-formingd11-orbd12-cluster-00-cropsd13-picks
82 shots · playbook · component.json · site

ED., Melbourne

React 18.2.0 client-rendered from a WordPress theme ('edsite'): .tsx views with sibling .graphql queries, data printed as window._PAGE_DATA, rendered with createRoot; webpack bundle; Stitches for styles, WordPress 6.8 or later (generator hidden) with …
d01-home-topd02-footer-restd02b-footer-restd03-hover-phoned04-hover-maild05-hover-instagram
157 shots · playbook · component.json · site

Floema

Nuxt 4.5.2 on Vue 3.5.42 (SSR then hydration), Pinia, @nuxtjs/i18n 10.0.1; made by Büro (burocratik.com) with its in-house BuroCore utilities, Sanity (project 535lnz3g, dataset production, API 2025-08-08, GROQ, portable text); images via Vercel image …
cta-13-restcta-14-hoverhome-07-settledhome-08-scrolled-1400home-09-scrolled-4000nav-01-rest
92 shots · playbook · component.json · site

Kōzōwood Industries, Portugal (site by Büro)

Nuxt 2 full static (nuxt generate) on Vue 2.7.14, vue-router 3.6.5, Vuex 3.6.2, vue-meta 2.4.0, vue-i18n 8.28.2, Nuxt Image static provider, vue-screen breakpoints, Sanity (GROQ in page chunks, cdn.sanity.io); hosting Vercel behind Cloudflare; video on …
intro-99-settledmenu-00-restmenu-01-openmenu-02-hover-itemmenu-03-closednavback-00-on-why-wood
190 shots · playbook · component.json · site

Your Majesty, Amsterdam

Next.js 16.4.1 (App Router, Turbopack build), React 19.3.0-canary, Storyblok (asset space 238272, content fetched server side), native scrolling with CSS scroll-behavior: smooth and overscroll-behavior: none; no Lenis or Locomotive; inner scrollers hide …
bar-d01-arrivalbar-d02-restbar-d03-pointer-near-not-onbar-d04-awake-hoverbar-d05-after-scroll-upbar-d06-keyboard-focus
196 shots · playbook · component.json · site