ES··NQ··CL··GC··BTC··VIX··
MKT··
REGIME··
delayed
dhawal.org

Home / Colophon

Colophon

Colophon.

Notes on the typography, motion, and machinery that compose this site. Documented for the next reader who notices the details and wonders why.

IType

Three families, each with a job.

The hierarchy is deliberate: a warm-serif voice for the editorial register, a workhorse sans for prose and UI, a monospace for the numerical and structural register that surrounds market data. Each is loaded as a variable font so weight and italicization carry over without separate files per style.

Fraunces

Serif · headings, italics

fonts.google.com

High-contrast warm serif with strong italic personality. Used for page titles, pull quotes, datelines, the paper-reader theme, and any moment when the voice should slow down and become its own object.

Inter

Sans · body, UI

rsms.me/inter

Workhorse sans for running prose, navigation, labels, and the command palette. 18px base on prose; tight tracking on smaller display sizes.

JetBrains Mono

Mono · data, eyebrows

jetbrains.com

Tabular figures (`font-feature-settings: 'tnum'`) make price levels and timestamps line up cleanly. Used for tickers, timestamps, eyebrow labels, footnote counters, and most chrome that frames data.

IIColor

Warm amber on near-black, with a sepia paper-reader.

The dark default reads as warm rather than neutral — every surface tone is shifted a few percent toward yellow. The accent is amber (#E8A62C), tuned to feel structural rather than decorative: used for rules, marks, citations, and live statuses, never as a flat background fill.

The research surface (/research/*) carries a separate sepia paper- reader theme — cream against a warmer-than-white background — so long reads feel like reading paper, not a UI. The light theme is a third skin, available via the header toggle.

Data-positive and data-negative carry their own tokens (#3DAA6F, #D0524F), separate from the general positive / negative semantic tokens — brighter, more chromatic, so ticker deltas read at a glance.

IIIMotion

Snappy exits, no busywork.

Motion tokens carry four durations (instant 80ms, fast 160ms, normal 240ms, slow 420ms) and a small set of eases. The standard out-ease (cubic-bezier(0.22, 1, 0.36, 1)) decelerates fast; the spring overshoots subtly. Page transitions crossfade 240ms; the kinetic hero word-reveal runs ~880ms on first paint.

The animation runtime is motion (the successor to framer-motion, swapped in P13). It's tree-shakeable per island; theming transitions apply selectively to the typographic spine (header, main, sections, articles, footers, h1-h4, p) rather than every node, which kept the ticker rail and chart canvas from getting paid the cost of a 240ms transition on every theme change.

IVEditorial

A small vocabulary of pieces, used precisely.

The research and essay surfaces use a Tufte-inspired editorial register: sidenotes float into a 280px right gutter on wider viewports; pull quotes appear in two variants (centered with hairline amber rules, or floated to the right column); citations carry a dotted amber underline that opens a 280px popover on hover. Drop caps open methodology bodies; section numerals are roman, dynamically allocated so absent sections don't leave gaps in the numbering.

Each primitive has a defined role — sidenotes for running gloss that accompanies the prose, footnotes for one-off references, hover citations for trader/quant references where the reader might want a one-line gloss. Using the wrong one weakens the voice; the discipline is deliberate.

VData

Where the numbers come from.

Every data widget on the site cites its upstream source explicitly. The intent is editorial — readers should be able to verify any number on the page by following the chain back to its issuer.

Yahoo FinanceLive quotes, intraday and daily candles, sector indices
FinnhubEarnings calendar, economic releases (actual/forecast/prior), per-symbol news
FREDMacroeconomic series (CPI, PCE, unemployment, treasuries), MacroRegime composite
SEC EDGARPer-symbol filings rail, insider activity
EIANYMEX WTI futures curve via the EIA petroleum API
CFTCCommitments of Traders weekly reports for futures positioning
Federal Reserve / BLS / BEAAuthoritative release schedules baked into the static macro-events config

Authority cascade for the macro-event calendar (the FOMC / CPI / NFP / GDP / PCE markers on every chart): the Federal Reserve's published meeting schedule, the BLS CPI release calendar, the BEA GDP+PCE schedule, and the first-Friday rule for NFP. The dates are curated into a static config — accurate, stable, and independent of any live calendar feed's coverage. Values for the same releases (actual / consensus / prior) join from Finnhub's econ-calendar at runtime.

VIMachinery

Static export, edge functions, no servers.

The site is a Next.js 16 static export served from Cloudflare Pages. Every page is pre-rendered at build time. Anywhere a request needs an API key — quotes, news, filings, the daily brief — a Cloudflare Pages Function intercepts at /api/* with the key held in environment variables. The client never sees a secret.

Pure handlers live in src/server/ with a thin wrapper in functions/api/; the test suite exercises the handlers as plain Request/Response functions without spinning up the Next runtime. Full-text search is powered by Pagefind, indexed at postbuild against any page carrying data-pagefind-body.

Site built and maintained by Dhawal Ranka · Hosted on Cloudflare Pages · Source closed. Back to the front page →