Guide
Hoe deze site gemaakt is
Een korte doorloop van het proces achter Halcyon en hoe je hetzelfde op Cloudflare Pages zet. Bedoeld zodat je het kan namaken.
- 01
Concept vóór code
Halcyon begon niet met een canvas maar met een these: "een studio voor volumetrisch licht". Drie radicaal verschillende concepten werden geschetst, met per concept een signature-moment, een scroll-verhaal en het grootste risico. Het gedurfdste haalbare concept won.
Dat concept, plus het palet (ijsvogel-teal + koper op inkt-zwart), de typografie en de verboden patronen, werden vastgelegd in een DESIGN.md vóór er ook maar één regel UI werd geschreven. Die lock is de belangrijkste anti-generieke stap.
- 02
Het licht is een shader
Het bewegende beeld is geen video en geen 3D-model. Het is één fragment-shader die per beeldpunt duizenden keren door een 3D-ruisveld "marcheert" (raymarching) en het licht optelt dat onderweg wordt geraakt.
De truc voor snelheid: een bounding sphere. Stralen die het organisme missen, worden meteen gestopt, zodat het grootste deel van het scherm goedkoop blijft. Scroll en tijd sturen de uniforms (dichtheid, warp, camera, licht-fase).
- 03
Snel én toegankelijk blijven
De WebGL-laag draait enkel op desktop met voldoende vermogen. Daaronder ligt altijd een met de hand gemaakte CSS-gradient die het organisme benadert: dat is de instant-LCP, de mobiele versie en de reduced-motion-eindtoestand tegelijk.
Alle tekst zit op een leesbare "slab" die het bewegende licht afdekt, zodat het contrast overal AA haalt. Toegankelijkheid is een harde grens, geen bijzaak.
- 04
Drie iteration-passes
Na de eerste bouw ging de site drie keer door een fijne kam: pass 1 jaagt op defecten (spacing, contrast, timing), pass 2 verrijkt (diepte, micro-interacties, een terugkerend detail), pass 3 snoeit terug tot alles één stem spreekt. Pas daarna zag een mens de site.
Naar Cloudflare Pages, in vier commando's
De hele site is statisch, dus hosten is gratis en snel. Dit is de volledige weg van map naar live URL.
- 01
npm create astro@latestStart een Astro-project (of hergebruik een template met Tailwind, strikte CSP en Lighthouse-CI al bedraad).
- 02
npm run buildBouw naar statische HTML/CSS/JS in dist/. Astro hasht de inline scripts en styles in een strikte Content-Security-Policy.
- 03
npx wrangler loginKoppel je Cloudflare-account eenmalig (opent de browser).
- 04
npx wrangler pages deploy dist --project-name halcyonPubliceer dist/ naar Cloudflare Pages. Je krijgt meteen een live URL op *.pages.dev terug, gratis en op de EU-edge.
Wil je de exacte prompts zien die het beeldmateriaal en de concepten voedden? Die staan op deprompts-pagina.