Hello World — rsaha.tech is live
First post on the new site. A quick look at the stack, the static MDX pipeline, and what's coming next.
2 min read
metanext.jsmdx
Hello World
Welcome to rsaha.tech — the personal site and research notebook of Rohan Saha.
This is the inaugural post, shipped the same day the blog pipeline went live. Here's a quick rundown of how it all works.
The Stack
| Layer | Tech |
|---|---|
| Framework | Next.js 15 (App Router, Turbopack) |
| Language | TypeScript 5, strict mode |
| Styling | Tailwind CSS v4, CSS variables |
| Content | MDX via next-mdx-remote/rsc |
| Hosting | Vercel, static output |
| Publishing | Commit .mdx → GitHub → Vercel rebuild |
How the Blog Works
Every post lives as an .mdx file under content/blog/.
At build time Next.js reads the directory, parses front-matter with gray-matter,
and renders each post through MDXRemote with syntax highlighting via rehype-pretty-code.
// src/lib/blog.ts — simplified
export function getAllPosts(): PostMeta[] {
const files = fs.readdirSync(CONTENT_DIR);
return files
.map(parsePost)
.filter(p => p.published)
.sort(byDateDesc);
}No database, no CMS — just markdown and Git.
What's Next
- repX — deep dives into vulnerability research and reporting
- trnX — the encrypted communication layer I'm building from scratch
- AI Red-Teaming — notes on adversarial prompting and LLM security
Stay tuned, or check the Projects and Research sections for what's already there.
— Rishi