Back to blog
Aug 25, 2025
2 min read

Why I Built My Own Free Website with Astro, GitHub, and Cloudflare Pages

How I created a blazing fast, SEO-optimized, and free personal website using JAMstack, Astro, and Cloudflare Pages. A minimal yet powerful setup for blogs and portfolios.

For years I wanted a personal space online — not just another LinkedIn profile or Twitter feed, but a place that I truly own. Somewhere I could write about my passions, share my projects, and experiment freely.

The problem? I didn’t want to deal with heavy CMS systems, overpriced hosting, or complex server maintenance. I wanted something:

  • Fast
  • Minimal
  • SEO-friendly
  • Almost free

So I went with the JAMstack approach: Astro for static site generation, GitHub for version control and CI/CD, and Cloudflare Pages for global hosting. The result? My own personal website and blog at giovannimastellone.it (the one you are reading just now).

Why this stack?

  • Astro → lets me write content in Markdown, with modern components and blazing-fast builds.
  • GitHub → acts as both version control and CI/CD pipeline. Just push and the site rebuilds automatically.
  • Cloudflare Pages → free hosting, edge network, and HTTPS out of the box.

This means my website costs me 0€/month (aside from the domain name), and still delivers a 100/100 Lighthouse score.

What I built

The website includes:

  • A blog with Markdown posts (like this one)
  • A portfolio with my open-source projects
  • An about page with my background
  • A professional showcase with structured Schema.org data for SEO

If you’re curious about the technical details, check out the project page here.


Bottom line: you don’t need WordPress, expensive VPS hosting, or complicated tools to build a professional personal site. With JAMstack, Astro, and Cloudflare, you can create your own fast, SEO-ready, and almost free website in just a few hours.