Personal website built with Astro and Tailwind CSS.
- Node.js 20+
npm install # first time only
npm run dev # start dev server at http://localhost:4321npm run build # type-check + build static site to ./dist
npm run preview # serve the production build locallyPushing to main triggers a GitHub Actions workflow that builds and publishes
to GitHub Pages — see .github/workflows/deploy.yml.
Posts live under src/content/blog/<project>/<post>/index.md. The top-level
folder is the project the post is grouped under; co-locate images/GIFs next
to index.md and reference them relatively (e.g. ).
src/content/blog/
my-project/
my-first-post/
index.md
cover.jpg
Frontmatter:
---
title: "My first post"
description: "A short summary."
date: 2026-06-03
cover: ./cover.jpg # optional
tags: ["astro"] # optional
draft: false # optional
---