Colophon

How this site works

Everything here is markdown in a git repository. Publishing is a git push; the pipeline does the rest. Total running cost: about $10 a year for the domain and a one-time $5 of LLM credit.

The publishing pipeline

  1. 1

    Write

    Markdown in git — posts, learnings, resume. Claude Code skills turn rough notes into publishable pages.

  2. 2

    Push

    git push to main is the only publish action there is.

  3. 3

    Build

    GitHub Actions runs the Astro build: pages, RSS, sitemap, share images and the search index, all generated statically.

  4. 4

    Serve

    GitHub Pages hosts the static output behind Cloudflare DNS at lokeshnanda.com.

The stack

PartTechnologyWhy
Static site Astro 5 Zero JavaScript by default; the chat widget is the only client-side island.
Hosting GitHub Pages Deployed by GitHub Actions on every push — no servers to maintain.
Search Pagefind Index built at deploy time, searched entirely in your browser.
Work catalog GitHub API + Actions cron Repos tagged `portfolio` appear on the Work page automatically every week.
Chat assistant Cloudflare Workers Streams answers grounded in the resume and site content, protected by Turnstile and rate limits.
LLM OpenRouter Prepaid with a hard credit limit — a traffic spike can never run up a bill.
Observability Opik + Actions logs Every chat conversation is a trace; every deploy is a build log.

Read the deep dives

The full stories, with code: This site ships itself covers the publishing pipeline and the Claude Code skills, and The chatbot on this site covers the Worker, the cost guardrails and the tracing. The whole setup is open on GitHub if you want to borrow any of it.