Personal portfolio site built with Astro, Tailwind CSS v4, and DaisyUI, based on the Bloomfolio theme. Deployed to Cloudflare Workers.
| Layer | Technology |
|---|---|
| Framework | Astro 5 |
| Styling | Tailwind CSS v4 + DaisyUI v5 |
| Content | MDX with KaTeX math support |
| Deployment | Cloudflare Workers (via Wrangler) |
npm install
npm run dev # http://localhost:4321
npm run build # output → ./dist
npm run preview # preview the production build locallyAll site-wide settings live in src/config.ts:
- Personal info — name, title, description, avatar, location
- Social links — GitHub, LinkedIn, email, and more
- Section visibility — toggle projects, blog, work, education, hackathons, and contact on/off
Content is managed through Astro content collections under src/content/:
| Directory | Purpose |
|---|---|
work/ |
Work experience entries |
projects/ |
Project write-ups |
hackathons/ |
Hackathon entries |
education/ |
Education history |
_blog/ |
Blog posts (MDX, supports LaTeX) |
The site deploys as a static asset bundle to Cloudflare Workers. After building, deploy with:
npx wrangler deployConfiguration is in wrangler.jsonc.