I Stole a Website, Broke It, and Built This in 48 Hours
James asked. I cloned a site. Fought with Sanity. Built an org-mode renderer. Slept 6 hours. Here we are.
Introduction
James from Reddit asked me to write about this site's tech stack. I don't know James. But here we are.
So I found this developer's site. Gorgeous. Dark theme. Blurry backdrop effects. Neat simplistic styling. Every post had these custom SVG covers that gave the whole thing personality. I was thinking about making a new portfolio and this was exactly the vibe I wanted.
So I cloned the repo. Forked the whole thing.
Deleted most of it. Kept the styling — that blurry glass look, the clean layout, the minimalist feel. That's what got me.
But then I hit a wall. The site pulled content from Sanity.io. I'd have to create an account, set up a project, define schemas, log into a browser to write blog posts. I noped out of that fast.
Some UI components were broken too. Probably depended on specific Sanity data shapes I didn't have. Had to rip them out and redo them.
So I deleted almost everything from the clone, opened a brand new Next.js project, and kept only the styling I liked. And then I had an idea that ruined my weekend.
"I cloned someone's site for their blurry glass effect. Kept the CSS. Rewrote everything else. Classic open source."
The Bad Idea
I use org-mode for everything. Not going to bore you with the backstory. I just do.
And I thought: what if the blog posts are just org files in a directory? No database. No CMS account. No browser textarea. Just files I edit in Emacs and push to git.
So on a Saturday at 10 PM I said "bet I can build an org-mode to React pipeline in one weekend."
The Pipeline of Questionable Decisions
org file → uniorg → unified → remark-rehype → rehype-shiki → HTML → ReactSix stages. Every single one had a bug.
uniorg crashes on certain code blocks. Nested lists produce deeply broken ASTs. My recursive renderer hit stack overflow on a post with 7 levels of nesting. Had to rewrite it iteratively.
And then the classic: pushed a build, entire site went down. Why? A #+BEGIN_SRC block without a language argument. Parser got null, crashed everything.
const lang = node.lang ?? 'text';One line. Three hours to find.
"I spent more time fixing null pointer exceptions in an org-mode parser than I did building the actual site. This is my life now."
The Weekend Timeline
Saturday 10 PM — Cloned the original site, deleted 80% of it, started fresh project with stolen CSS
Sunday 4 AM — Basic org-mode parsing working. Can render "Hello World" in bold. Feels unstoppable.
Sunday 12 PM — Added code blocks with syntax highlighting. Shiki crashed on TypeScript. Turns out I was passing wrong language IDs. Fixed. Added language badges for style points.
Sunday 6 PM — The recursion bug. Rewrote entire renderer to be iterative. Took 4 hours. The post that caused it was 7 levels deep. Still bitter.
Sunday 10 PM — Site is live. Deployed. Rendering. Checkboxes toggle. Syntax highlighting works. Headings have anchor links. Collapsed into bed.
Total sleep: 6 hours. Total caffeine: irresponsible.
What Survived From the Clone
The blurry backdrop. The card layout. The dark theme. The general vibe.
Everything else is mine. The org-mode pipeline. The SVG covers. The animation system. The contribution graph. The custom components. The bugs. Especially the bugs.
The Stack
- Next.js 16 — App Router. Vercel deploys. Works.
- Tailwind CSS v4 — I like it now. Don't tell anyone.
- Framer Motion — Page go swoosh.
- uniorg + unified + rehype + shiki — Chaos pipeline.
- Org-mode — Content format. No CMS. No accounts. No logins.
- OrgRenderer.tsx — 400 lines. All mine. Every bug lovingly cataloged.
I write in Emacs, save, git push, done. No browser. No dashboard. No "preview loading..." Just files.
PS to James
You asked. I delivered. The repo's private, sorry. But the story is yours now. Go build something. Steal someone's CSS. Clone their repo. Delete everything. Keep what you love. That's how this works.
"Built in a weekend. Stolen styling. Custom renderer. 6 hours of sleep. Zero regrets. Documented for James."
