Skip to content

Colophon

How this site was built.

Performative transparency. Every design and engineering decision documented — so designers and developers who care to look can see the pattern, and so future-me has a record.

Teach the pattern, don't sell the fix.

Performance · Target

Speed is design.

0
Lighthouse Performance
0
Lighthouse Accessibility
0
Lighthouse Best Practices
0
Lighthouse SEO

Lighthouse 100 across all four categories is the floor, not the ceiling. Sub-1s LCP on 4G, sub-50KB critical CSS, <150KB JS critical path, zero CLS from images or fonts. Performance budget is enforced in CI; regressions block deploy.

Design system

Golden ratio is the grid.

Type scale

Each step ≈ 1.618× the prior. Body 17px → H4 28 → H3 44 → H2 72 → H1 116 → Display 188. Massive contrast between body and hero is what produces editorial confidence.

fs-eyebrow → fs-body → fs-lede → fs-h4
→ fs-h3 → fs-h2 → fs-h1 → fs-display

Spacing scale

Fibonacci: 8 / 13 / 21 / 34 / 55 / 89 / 144 px. The eye reads Fibonacci-tuned vertical rhythm as “right” without knowing why. Sections breathe to a Φ-bound cadence.

xs:8 · sm:13 · md:21 · lg:34
xl:55 · 2xl:89 · 3xl:144

Layout proportions

Asymmetric columns at the golden split — 38.2% / 61.8% rather than 50/50 or 67/33. Hero, About, Speaking, and Ask Daniel Teaser all share this proportion. Reading column max-width: 680px (Φ × 420).

Color palette

#F5F0E8
#0A0A0A
#0D374C
#B08838
#3F83B6
#D9D4CD

Cream is the calm field. Ink is text and dark moments. Signature Blue is brand anchor and primary CTA. Signature Amber is the ownable highlight (2–5% of surface). Restraint is the rule.

Signature vocabulary

Five elements that make this site recognizable.

New components are designed by composing these — never inventing from scratch. Cumulative restraint is what produces a recognizable visual signature.

  1. 01

    The Amber Rule

    A 2px Amber horizontal rule used as a graphic device — section dividers, card mark, manifesto punctuation. Sometimes animated, drawing in left-to-right on scroll.

  2. 02

    The Italic Lead

    Playfair italic for the takeaway sentence at the end of a section. Pairs with roman type to create rhythm. Editorial print convention applied to web.

  3. 03

    The Number Block

    Outcome metrics get their own typographic treatment — massive Playfair number with the unit set in italic Amber, label set tiny in Satoshi caps below.

  4. 04

    The Asymmetric Frame

    Cards and image containers get a thin offset rule sitting 8–13px outside the content. Editorial poster convention.

  5. 05

    The Cursor Mark

    Custom cursor — small Ink dot with an Amber halo. On interactive elements, the dot expands and the halo dims. Reduces to system cursor on touch. (Deferred to v1.1.)

Motion language

Five categories. Earned, never decorative.

Every animation belongs to one of five categories. Reduced-motion mode disables all categories except instant fades — non-negotiable per WCAG 2.1 AA.

Reveal

600ms

Scroll-arrived content lands with intent. Once per element.

Choreography

scroll-bound

Multiple elements sequenced over a scroll range. Sticky pin no longer than 100% viewport.

Response

200ms

Hover, click, focus. Magnetic pull ≤ 8px. No bounce.

Transition

400ms

Page-to-page via View Transitions API. Native fallback.

Ambient

8–20s

Slow background drift, marquee. Max one per page.

Stack

Built on libraries that age well.

  • Next.js 14 (App Router)Frontend framework. Edge runtime for the streaming Ask Daniel route.
  • Tailwind CSSUtility-first styling, configured against the golden-ratio + Fibonacci token system.
  • shadcn/ui (via Radix primitives)Accessible base components, restyled to the brand.
  • Framer MotionComponent-level animation, scroll reveals, spring physics for the magnetic CTA.
  • Lenis (smooth scroll)Industry-standard smooth scroll. Off in reduced-motion + on touch.
  • next/fontSelf-hosted Playfair Display + Satoshi, zero CLS from font loading.
  • Anthropic Claude (sonnet-3-5)Generation for Ask Daniel. Streamed via Server-Sent Events.
  • OpenAI text-embedding-3-smallEmbeddings for Ask Daniel RAG. Built at deploy time, ~150 chunks.
  • NestJS 10 + Prisma 5 + PostgreSQLBackend (apps/api). Self-improvement engine, CMS, integrations.
  • Vercel (frontend)Hosting + edge runtime + image optimization.

Full source for the brand documents that ground Ask Daniel lives in business-context/ — twenty-seven markdown files covering brand voice, services, sitemap, founder story, and the design approach docs that produced this site.

Every detail above defends a thesis. Cut anything that doesn't.

← Back to home