A small, static personal homepage built with Astro.
The homepage copy and manually curated links live in:
src/data/site.ts
The CV source lives in src/data/resume.json. The /cv/ page renders it with
jsonresume-theme-colophon, and npm run dev / npm run build generate
public/resume.pdf ahead of time with Puppeteer-controlled Chrome.
Shared page styles live in src/styles/global.css.
Requires Node.js 22.12 or newer.
npm install
npm run devAstro will print the local URL, usually http://localhost:4321.
npm run buildThe static site is written to dist/.
Pushes to master deploy automatically to GitHub Pages using
.github/workflows/deploy.yml.
The site uses the custom domain david.mn. Its domain record is stored at
public/CNAME, so Astro includes it in every build. In the repository's GitHub
Pages settings, the deployment source must be set to GitHub Actions.