Set up
Runs on your computer. Pick your agent and operating system.
This project does not publish an install method we can turn into a config. Follow the README instead.
README
synced Oct 22, 2026adityakarnam.com
Source for adityakarnam.com — Aditya Karnam's personal site and running lab notebook. It's built less like a portfolio and more like a "world model": a set of linked pages (/systems, /stack, /field-notes, /now, /about) that track what's being built, the research questions behind it, and how it's evolving over time.
What's on the site
- Systems — public projects framed as evidence: research question, what was built, why it matters, with source links, not just a list of repos.
- Stack and Field Notes — the current research agenda and in-progress investigations, kept current rather than archived once-and-done.
- Now / About — current focus and background.
- Hero chat — a retrieval-augmented chat assistant on the homepage (
functions/api/hero-chat.ts) that answers questions about the work using the site's own content as grounding, with persona support and multi-turn conversation. - AI Toolkit — small standalone tools: an Intelligent Prompt Composer, a Prompt Grader & Rewriter, and a Tweet Thread Generator.
- Portfolio MCP — a hosted, read-only Model Context Protocol server (
/mcp) that lets MCP clients query the site's projects and recent work as structured data. - Blog — technical writing on AI/ML, agentic systems, Rust, and distributed systems, syndicated to DZone, Medium, and Level Up Coding.
Architecture
- Gatsby 5 + TypeScript on top of
@lekoarts/gatsby-theme-minimal-blog, with the theme's components shadowed undersrc/@lekoarts/where custom behavior is needed. - Content lives in
content/posts(MDX blog posts) andcontent/pages; structured "world model" data (systems, research agenda, field notes) lives insrc/components/world-model/data.tsas typed, versionable data rather than freeform MDX. - Deployed on Cloudflare Pages, git-integrated — every push builds and deploys automatically. Server-side behavior (hero chat, RAG retrieval) runs as Cloudflare Pages Functions under
functions/. - An AI Search / RAG corpus is synced from site content (systems, project pages, posts) to Cloudflare's managed AI Search via
scripts/sync-rag-corpus.mjs, which backs the hero chat assistant with retrieval over the site's own public content.
Research
- ERBGA (Efficient Reduced-Bias Genetic Algorithm) — a novel genetic algorithm for generic community detection objectives; winner of a Master's research prize at UMSL.
- Published as "Efficient Reduced-Bias Genetic Algorithm (ERBGA) for Generic Community Detection Objectives."
Local development
npm install
npm run develop # dev server at localhost:8000
npm run build # production build
npm run serve # serve the production build locally
npm test # vitest
Other scripts:
npm run clean # clear the Gatsby cache
npm run sync:rag-corpus # manually trigger a RAG corpus sync (requires Cloudflare credentials)
Connect
© 2026 Aditya Karnam