February 22, 2026 · 1 min read

Building My Portfolio with Astro

How I used Astro's island architecture to create a fast, dark-themed portfolio website with React islands and Markdown blog support.

astro portfolio web-dev

Building My Portfolio with Astro

When I set out to build my portfolio, I wanted something that felt intentional — minimal JavaScript, fast load times, and a design that lets the work speak for itself.

Why Astro?

Astro’s island architecture was the perfect fit. Most of my portfolio is static content — text, images, and CSS animations. Only a few components need JavaScript:

  • A contact form with validation
  • A live clock showing my local time in Bali
  • A mobile menu overlay

Everything else ships as zero-JS HTML. This means the portfolio loads instantly, even on slow connections.

The Design System

I built the entire site around a dark-only theme:

--color-bg-primary: #0A0A0A;
--color-text-primary: #F5F3EB;

Sharp corners, monospace labels, and generous white space create an editorial feel. The typography uses Manrope for display headings and Inter for body text.

What’s Next

I’m planning to add:

  • Case studies for each project
  • A /uses page with my setup
  • Dark-themed code snippets in blog posts

Stay tuned.