Dusklayer
Sign in Get Pro
N° 0016TemplatePro

Clinic Noir

A full skin clinic site in brass on near black. Gold pollen forms a ginkgo leaf, then lets go as you scroll.

Source files, Studio plan

44 KB of text that builds one HTML file. Paste it into Claude Code, Cursor or v0 to rebuild this page.

Open full page Live. Scroll inside the preview to play it.
Loading the layer
LooksShowing NoirEach look changes the colours of the live preview and goes into the prompt you copy.
Make it yoursYour brand, copy and colours go into the prompt you copy. Colours change the preview live.
Brand remix is a Pro feature at launch. It is open in the preview.

Overview

A whole site for an invented Marylebone skin clinic in brass on near black: gold pollen slowly gathers into a ginkgo leaf beside the headline and lets go grain by grain as you scroll, then a treatments grid that lets in a warm light leak under the pointer, typographic practitioner cards, glass membership plans whose prices roll, a constellation of client notes, a four step first consultation, and a booking card.

Signature momentAbout three seconds in at scroll 0: 22,000 grains of gold pollen have gathered from a mist into a tilted ginkgo leaf with its veins open, lit by a soft shaft from the top right with out of focus discs behind it, beside the headline and the brass booking button.

  1. Pollen that gathers

    22,000 particles (a third on phones) in two RGBA32F textures move on the GPU inside a Worker: curl noise drift and a spring (k 7) toward points sampled from a ginkgo, orchid, fern or leaf. Each grain’s spring ramps in over 2.4 s, so a mist along the light becomes a leaf with open veins in about three seconds.

  2. Letting go on scroll

    Scrolling the 70svh pin releases each grain at its own moment and lets it rise back along the light at (minus 0.10, 0.22); scrolling back gathers it again. Changing the silhouette keeps the particles and gives them new targets, so the dust flows from one shape into the next.

  3. Light leaks

    Eight treatment cells let warm light in from above the pointer: three CSS gradients and 160 px of seeded grain painted in the Worker. The leak is capped per look so lit text keeps 4.7:1, and the cell’s text moves toward the ink as it brightens.

  4. Liquid membership

    Three glass plans sit over a ginkgo engraving drawn as one SVG path. The toggle rolls nine digit columns forward one full turn over 0.9 s with a 60 ms stagger, and in Chromium the hovered plan refracts the engraving through a displacement map of up to 46 px.

  5. Client constellation

    Eight client notes are the bright stars among 40 on a Canvas 2D sky. Pointing within 180 px draws hairlines to three neighbours and a line of the note; a click flies the camera 700 ms to 1.6 times zoom and opens it, and every note is also a keyboard button.

  6. One colour system

    Page, ink and accent drive every surface: muted text is walked to 4.8:1 on both grounds, button labels are picked by contrast, and the sky, glass and leaks are derived, so STRATA.set turns the whole site light or dark live. Nine looks, four of them light.

Build details

Kind
Template
Plan
Pro
Tone
Dark, Light
Industries
Wellness and clinics, Beauty
Technique
Particles, Shaders, Glass refraction, SVG
Built with
Lenis 1.3.27, plain HTML, CSS and one ES module
Looks
9
Weight
125 KB, layer files only
Mobile performance
100
Accessibility
100
Fidelity Score
In review
Licence
Commercial, including client work. No redistribution. Read it
Version
1, updated 3 November 2026
Released
3 November 2026
Parameters, 16 of them, all live through DUSKLAYER.set()
ControlKeyRangeDefault
Accent (booking buttons, step numerals, constellation lines, the light in the leaks)accentcolor#C9A46A
Page tone (under 0.2 luminance the page is dark; sky, glass and leaks follow)pagecolor#0F0D0B
Inkinkcolor#EEE6D8
Hero particles (a third on phones)particleCount6000 to 4800022000
Hero silhouetteheroShapeselect: ginkgo, orchid, fern, leafginkgo
Pollen warmth (champagne to copper)warmth0 to 10.45
Gathering time (seconds)gather1.5 to 62.4
Pollen drift (curl noise)drift0 to 20.8
Pricing glass strength (frost and hover refraction)glass0 to 10.55
Light leak strength (capped per look so lit text keeps 4.7:1)leak0 to 10.7
Grain inside the light leaksgrain0 to 10.3
Constellation stars (eight of them are clients)starCount20 to 9040
Line reach (pointer distance in px that lights a client)lineReach60 to 320180
Section spacingspacing0.7 to 1.41
Corner radius (px)radius0 to 208
Seed (silhouette sampling, sky layout, grain)seed1 to 997

Something wrong with this layer? Report a problem and we fix it in the next version.

The prompt

One text file, 44 KB, 10 sections. Every number the page uses is in it, so another model can rebuild the layer without seeing this one.

  1. Role
  2. Output contract
  3. Design tokens
  4. Layout
  5. Scene
  6. Presets
  7. Motion
  8. Responsive and performance
  9. Acceptance checklist
  10. Customize

How to use it

  1. Pick a look. The look you choose above is written into the prompt’s parameter block.
  2. Copy the prompt. Paste it into Claude Code, Cursor or v0 as the first message of a new session.
  3. Make it yours. Change the brand name, copy, colours and fonts first; every placeholder is marked. Keep the structure.
  4. Check it. The prompt ends with an acceptance checklist. Run through it before you ship.
Read the opening of the prompt
# Clinic Noir: build prompt

## Role
You are a senior creative front-end developer. Build one self-contained `index.html`: the whole site of {{BRAND_NAME}}, an invented skin and aesthetics clinic in a {{PLACE}} mews house, brass on near black, that passes for a real high end clinic when read. Gold pollen gathers slowly into one botanical silhouette in the hero (raw WebGL2 in a Worker) and lets go on scroll; treatment cells let a warm light leak in under the pointer; typographic practitioners; glass membership plans with rolling digits; client notes as a Canvas 2D constellation; first consultation steps; visit and booking; questions; footer. Calm, warm, expensive: space, one brass accent, real numbers; every colour derives from page, ink and accent.

Copy rules: no medical claims, no guaranteed results, no before and after language, no "cure", "fix" or "anti-aging"; say "consultation", "suitability", "talk through options". Injectables appear only as "Injectables consultation with a medical practitioner". Client notes speak of the experience and the staff, never results. No em or en dashes (ranges read "9:00 to 19:00"), sentence case, British spelling.

## Output contract
- One file: `<style>`, a classic head script, the body, one module; no images.
- Import map `{"imports":{"lenis":"https://cdn.jsdelivr.net/npm/lenis@1.3.27/dist/lenis.mjs"}}`; import Lenis in an idle callback after `load` (`lerp: 0.1, smoothWheel: true, autoRaf: false, anchors: true`, `lenis.raf(now)` in your loop), never under capture or reduced motion. No other libraries or hosts.
- Fonts: preconnect both Google hosts, one non-blocking link (`media="print" onload="this.media='all'"` plus `<noscript>`) for `family=EB+Garamond:wght@400;500&family=Be+Vietnam+Pro:wght@400;500&display=swap`. Metric matched fallbacks (size-adjust, ascent, descent; line gap 0): EB Garamond on Georgia 78.5/128.3/38%, DejaVu Serif 74/136.1/40.3%, Liberation Serif or Times New Roman 94.3/106.8/31.6%; Be Vietnam Pro on Arial, Liberation Sans or Arimo 110.5/90.5/24%, DejaVu Sans 96.5/103.6/27.5%, each listed after the web font.

[41,662 more characters. Copy the prompt to get all of it.]

More layers

Open the library

Ledger Swiss

N° 0021

A full finance site on a strict twelve column grid. A bronze arch rises from liquid metal and bristles near your pointer.

TemplatePro

A full launch site for a developer tool. A lit field parts into a lane toward the sign up as you scroll.

TemplatePro

Tidal Glass

N° 0022

An underwater scene that rises through the surface as you scroll.

ScenePro