geekyrahul.in — this website
activePublished · Last updated
This is a personal learning project, not a product or a service. It uses only public or synthetic data.
What it does
This website is my public lab notebook: projects, writing, and videos about building AI agents. It is generated statically with Astro, so every page is complete HTML at request time — readable by a browser with JavaScript disabled, by a search crawler, or by an AI assistant fetching a page.
Why I built it
A personal site in 2026 has two audiences: people, and the AI systems that increasingly answer questions on their behalf. I wanted a site that treats both as first-class — and building that properly (structured data, llms.txt, Markdown endpoints, answer-first content) is itself a learning project, which is the point of this site.
Architecture
Markdown files ──► Astro content collections (Zod-validated) ──► static HTML
├─ rss.xml, sitemap
├─ llms.txt, llms-full.txt
├─ {page}.md endpoints
└─ per-page OG images (sharp)
A single feature-toggle file controls every optional section: flag off means the route is never generated, and the section disappears from navigation, sitemap, RSS, and llms.txt. Turning a section on requires no code changes.
What worked, and what broke
What worked: the toggle system. Routes are injected at build time based on flags, so a disabled section returns a genuine 404 rather than an empty shell — verified by flipping a flag, rebuilding, and watching the route vanish from the build output.
What broke: an early version loaded its CSS without the Tailwind directives, so the first build rendered completely unstyled pages. Caught by screenshotting the built site rather than trusting that “it compiled” meant “it looks right”.
What’s next
- Publish the repository and wire automatic deploys on push.
- Run Lighthouse and the Rich Results Test after go-live and record the scores here.
Stack and tools
- Astro
- TypeScript
- Tailwind CSS
- Markdown
- Vercel
Cost, latency, and eval numbers
| Cost | $0/month — static hosting on Vercel's free tier |
|---|---|
| Latency | No server-side rendering per request; pre-built static files served from a CDN |
Frequently asked questions
Why build a site instead of using a CMS?
Content lives in Markdown files in a Git repo, frontmatter is validated at build time, and every page is plain static HTML. There is no database to maintain and nothing dynamic to break.
What makes it AI-crawler-friendly?
Full content in the initial HTML, robots.txt explicitly allowing reputable AI crawlers, an llms.txt index, a Markdown version of every page, TL;DR blocks at the top of each project and post, and typed JSON-LD on every page.
Is the source code available?
The repository will be public on my GitHub (github.com/rpalsaxena). The README documents how to add content, flip feature flags, and deploy.
Related projects
We4AI Lab: Agent #1 — MCP Tool-Use Agent
My first agent build: an LLM wired to real tools through the Model Context Protocol, with a full video walkthrough on the We4AI channel.
- agents
- mcp
- llm
Last updated: