Why I chose Astro for my blog
Why I chose Astro for my blog
After evaluating several options, I decided to build my blog with Astro. Here’s why.
What is Astro?
Astro is a modern framework for building fast, content-focused websites. Its main philosophy is to ship zero JavaScript by default to the browser.
Main advantages
1. Exceptional performance
Astro generates static HTML by default, resulting in:
- Ultra-fast load times
- Better SEO
- Lower resource consumption
2. Content Collections
The Content Collections system is perfect for blogs:
import { defineCollection, z } from 'astro:content';
const blog = defineCollection({
type: 'content',
schema: z.object({
title: z.string(),
description: z.string(),
pubDate: z.date(),
}),
});3. Framework flexibility
You can use React, Vue, Svelte or any other framework only where you need it:
---
import ReactComponent from './ReactComponent.jsx';
---
<div>
<h1>Static content</h1>
<ReactComponent client:load />
</div>4. Native Markdown
Writing in Markdown is super natural:
- Familiar syntax
- Frontmatter for metadata
- Components inside Markdown
Comparison with other options
| Framework | JavaScript | Flexibility | Learning curve |
|---|---|---|---|
| Astro | Minimal | High | Low |
| Next.js | Medium | High | Medium |
| Gatsby | High | Medium | High |
My experience
Taking this blog from idea to production with Astro was incredibly fast. The documentation is excellent and the community very active.
Conclusion
If you’re looking to create a blog or content site, definitely consider Astro. The combination of performance, DX (Developer Experience) and flexibility is hard to beat.
Useful resources
Have you tried Astro? What did you think?