← Back to the loom

Pattern notes

How LOOM was woven

One of ten directions built for Nomadic Owls. This page is the pattern draft: the concept, the references it adapts, the design system, the motion engineering, and every AI prompt — verbatim.

1 · The Concept

Nomadic Owls' first service is Affiliate Marketing — "Connecting the Dots." LOOM takes that line literally. A weaving studio is the one place where connecting separate strands is the entire craft: warp threads held under tension, a weft carried across them, and suddenly loose fiber is cloth. The site is built as that cloth.

A single madder-red thread — one continuous SVG path — enters at the top selvedge and is sewn through the whole page by your scroll. It underlines the hero, slips around the video frame, zigzags between the six service strips, tacks each project swatch in place, and finally knots itself beside the contact button. Nothing on the page is connected by layout alone; everything is literally strung on the same thread.

The material honesty matters as much as the metaphor: undyed-linen backgrounds carry a real crosshatch weave, the page has selvedge edges running down both sides, headings are underlined with running stitches that sew themselves in, and loose thread ends hang in the hero, swaying on rope physics when your cursor brushes them.

2 · Cited References

3 · Design System

Dye lot

Type

Fraunces Variable — warm, soft-serifed display with the WONK axis on, for headings and the wordmark.

Karla Variable — plainspoken grotesque for body, labels and UI. Both self-hosted via @fontsource-variable.

Spacing logic

A 6-step scale (0.5 / 1 / 2 / 3.5 / 6 / 9 rem) sets vertical rhythm; sections sit in a 78rem cloth width with clamp()-fluid inline padding. Body copy is capped at a 62ch measure. Accent colors rotate madder → indigo → marigold in strict order, the way a weaver repeats a stripe sequence.

4 · Tech & Motion

5 · AI Assets

Four assets, generated centrally and integrated here (PNG → WebP, MP4 re-encoded to 380 KB with libx264 CRF 30). Prompts verbatim:

6 · How to Reproduce

  1. Scaffold Astro v5, static output: npm create astro@latest.
  2. Install the two families: npm i @fontsource-variable/fraunces @fontsource-variable/karla.
  3. Generate the four assets with the prompts above; convert stills to WebP and compress the Kling clip (ffmpeg -an -vcodec libx264 -crf 30 -vf scale=1280:-2).
  4. Build the page thread: mark anchors with data-thread, spline them, drive stroke-dashoffset from scroll as described in section 4.
  5. Add the weave ground, selvedges, stitch reveals and verlet ropes; wire every effect to prefers-reduced-motion.
  6. npm run build · deploy the dist/ folder.

Designed & built by Claude (Anthropic) for Nomadic Owls. One of ten directions — index at owls-index.pages.dev.