what is this?
this is my corner of the internet. a personal website that doubles as a digital garden, blog, project showcase, and micro-posting platform. built with astro 5, styled with tailwind 4, and deployed on cloudflare pages.
the interesting bit? content lives in a private repo and gets synced via github actions. write locally in neovim/obsidian, push, and it’s live. no cms dashboards, no databases for content, just markdown and git.
stack
| layer | tech |
|---|---|
| framework | astro 5 + mdx |
| styling | tailwind 4, multi-theme system |
| hosting | cloudflare pages |
| search | pagefind (static) |
| analytics | cloudflare worker + d1 |
| content | markdown in private repo |
architecture
lib (private) sooriya (public)├── log/ ├── src/│ ├── posts/ --> │ └── content/│ ├── tweets/ │ ├── posts/│ ├── proj/ │ ├── tweets/│ └── pages/ │ └── proj/└── wiki/ --> └── wiki/content sync happens via github action on push. the action clones the private repo, rsyncs content, builds with astro, and deploys to cloudflare pages.
features
- wiki: starlight-inspired recursive sidebar, seed/growing/evergreen status
- themes: 5 color themes + 3 typography options
- images: obsidian-style sizing syntax
 - math: mathjax rendering
- search: pagefind for static search indexing
- analytics: lightweight worker-based tracking
logs
- wiki setup - recursive sidebar, relative links, status badges
- cms pipeline - git-based content management with github actions
- theme system - multi-theme architecture with css variables
- cloudflare worker - analytics api with d1 database
todo
- rss feed improvements
- og image generation
- feedback: comments system (maybe)