Colophon

Colophon

How this site is built, and what it deliberately does not do.

Framework
Next.js with a fully static export. No server, no database, no content management system. The whole site is HTML, CSS, one JavaScript bundle and a directory of images.
Type
Bodoni Moda for display, Newsreader for reading copy, JetBrains Mono for labels and tables. Self-hosted at build time, so no third party is asked for a font on page load.
Motion
GSAP with ScrollTrigger, and Lenis for smooth scrolling. Reveals use IntersectionObserver rather than scroll position, so nothing can end up stuck out of view if a measurement goes stale.
Reduced motion
Every animation has a composed end state rather than an absence. With prefers-reduced-motion set, smooth scrolling is off, carousels snap instead of easing, the marquee becomes a static row, and the testimonial deck lays out unstacked so every quote is readable without hovering.
Images
Every image is currently a generated placeholder that prints its own slot name and intended dimensions. The slot table lives in docs/images.md.
Dates
No year appears as a literal anywhere in the source. Anything year-shaped is computed when the site is built, so nothing here needs an annual edit.
Hosting
GitHub Pages, from a static export built by GitHub Actions on every push to the default branch.

Built September 2026. Utkarsh Bahuguna, Bengaluru, IN.