Building My Website - The idea and choosing the right tool (Part 1)
- How I built my personal website - Part 1 - Why I chose Astro as my static site generator after evaluating Jekyll, Hugo, and 11ty.
- 2 min read
I’m starting a series of articles about building my personal website - the very one you’re reading now. Since this is a broad topic, I’ll break it down into multiple parts:
- The idea and choosing the right tool
- SEO essentials: meta tags and base head element
- Content management with Markdown and Frontmatter
- Semantic HTML for accessibility and external readers
- Minimalist CSS: styling and native-like design
- Adding color themes with JavaScript
- Astro plugins: RSS, Sitemap, Word count
- SVG icons and Favicon
- Building resume with XeLaTeX
The Idea
I’ve had the idea of creating a personal website before, but my earlier attempts fell short. This time, I wanted to approach it more deliberately. Here’s what I aimed to achieve:
- Self-introduction: A place to share basic information about myself for visitors.
- Blogging: A platform to publish my thoughts, with full control over content. I prefer writing in Markdown (using Obsidian) and simply copying files to GitHub when ready.
- Flexibility: Room for non-blog pages if needed.
- Best practices: Fast loading, simplicity, and adherence to modern web standards.
Choosing the right tool
For a lightweight, fast-loading site, a static website was the obvious choice - it’s also easier to host and deploy. Static Site Generators (SSGs) are made for this, so I explored a few:
- Jekyll
- Hugo
- 11ty
But each had hurdles: unfamiliar languages (Ruby, Go), cumbersome setups, or excessive configuration. Frustrated, I finally discovered Astro - and it was a game-changer.
Astro is a static site generator with optional server-side or client-side reactivity (using modern frameworks). It offers:
- Simple defaults for quick setup.
- Powerful integrations (like RSS feeds) without complexity.
- Flexibility without bloat.
I read through Astro’s documentation and loved it. It was the perfect fit - and I was sold.