A high-performance, SEO-optimized portfolio and blog built with Astro 6, Tailwind CSS 4, and DaisyUI 5. This is the source code for my personal site at sknl.dev.
Designed for developers who want a clean, minimalist, and blazing-fast personal brand presence.
- Framework: Astro 6 (Static Site Generation)
- Styling: Tailwind CSS 4 & DaisyUI 5
- SEO: Dynamic sitemaps and automated OG image generation using Satori
- Content: Fully managed via Astro Content Collections (Markdown)
- Sitemap Generation:
src/pages/sitemap.xml.tsdynamically fetches content collections (e.g., blogs) and generates an XML sitemap at build time. - Dynamic OG Images: No manual image creation.
src/pages/blog/[id].png.tsusessatorito convert JSX/CSS layouts to SVG, and@resvg/resvg-jsto render them into crisp PNGs dynamically. - Type-Safe Markdown: Built-in strict frontmatter validation using
zodinsrc/content.config.ts. The build fails if you miss a required tag liketitleordate.
Get your portfolio up and running in seconds using Bun.
bun install
bun run dev| Command | Action |
|---|---|
bun install |
Install all dependencies |
bun run dev |
Start local development server |
bun run build |
Build the production-ready site |
bun run preview |
Preview the local production build |
Managing your content is as simple as editing Markdown files in src/content/:
blog/— Your technical articles and thoughts.project/— Showcase your latest work.about.md— Your personal bio and journey.
MIT. Use it, fork it, and make it your own.