v0.2.0
Latest Added
- Astro 6 site with Tailwind CSS v4, MDX blog, and React island architecture
- Pages: home, about, articles, projects, speaking, uses, thank-you, 404, changelog
- Dark mode with localStorage persistence and FOUC prevention
- Header with scroll animation, mobile navigation (headlessui), and theme toggle
- Content collections for MDX articles with frontmatter schema validation
- RSS feed at
/feed.xmlvia @astrojs/rss - Auto-generated sitemap via @astrojs/sitemap
- Projects page with Efektif, Restpresso, Frontol, Aggregatui, and stealth projects (Kapitan, L-Theanin, Linker, Anukan)
- GitHub avatar integration (auto-updates from profile)
- Docker + nginx setup for Hetzner deployment with SSL via certbot
- Cloudflare Pages deployment support
- Pre-push git hook for build verification
- oxlint for linting, Biome for formatting
- Changelog page at
/changelogwith timeline UI - Makefile with
changelogandreleasecommands
Changed
- Migrated from Next.js to Astro (complete rewrite)
- Replaced next-themes with custom localStorage-based dark mode
- Replaced cheerio-based RSS with @astrojs/rss
Fixed
- Avatar rendering on Cloudflare Pages (moved to GitHub profile image)
- React SSR build error (
React is not defined) by adding explicit import
