Memilih framework untuk blog personal adalah keputusan yang lebih berat dari yang terlihat.
Di satu sisi, kamu cuma butuh sesuatu yang menampilkan teks dengan baik. Di sisi lain, kamu ingin sesuatu yang menyenangkan untuk dipakai, yang terasa benar secara arsitektur.
Setelah bertahun-tahun berpindah-pindah — dari Jekyll ke Hugo, dari Hugo ke Next.js, dari Next.js ke Nuxt — saya akhirnya settling di Astro.
Apa yang membuat Astro berbeda?
1. Zero JavaScript by default
Ini adalah perbedaan terbesar. Ketika Astro mem-build sitemu, hasilnya adalah HTML murni. Tidak ada JavaScript yang dikirim ke browser kecuali kamu memintanya secara eksplisit.
Bandingkan dengan Next.js atau Nuxt yang selalu membawa runtime React/Vue ke client, bahkan untuk halaman yang sepenuhnya statis.
# Build output perbandingan (blog sederhana, 50 artikel)
Next.js: ~180KB JS (gzipped)
Nuxt: ~160KB JS (gzipped)
Astro: ~0KB JS (gzipped) ← tidak ada runtime!
2. Content Collections yang type-safe
Astro 2.0 memperkenalkan Content Collections — sistem untuk mengelola konten MDX/Markdown dengan validasi Zod. Ini game-changer.
// src/content/config.ts
const blogCollection = defineCollection({
schema: z.object({
title: z.string(),
date: z.coerce.date(),
category: z.enum(['Islam', 'Programming', 'Esai']),
})
});
Sekarang kalau frontmatter artikelku salah ketik catgory alih-alih category, build akan langsung error dengan pesan yang jelas. Tidak ada lagi artikel yang diam-diam silently broken.
3. Island Architecture
Astro menggunakan konsep “islands” — komponen interaktif yang ter-hydrate secara selektif.
<!-- Komponen ini tidak pernah dikirim ke client -->
<StaticComponent />
<!-- Komponen ini di-hydrate saat terlihat di viewport -->
<InteractiveWidget client:visible />
Trade-off yang perlu kamu tahu
Astro bukan tanpa kelemahan:
- Bukan untuk aplikasi kompleks — kalau kamu butuh state management yang kompleks, real-time features, atau autentikasi, Astro bukan pilihan tepat.
- Ekosistem yang lebih kecil — plugin dan integrasinya belum sebanyak Next.js.
- Kurva belajar .astro syntax — file
.astropunya sintaks khusus yang butuh waktu untuk terbiasa.
Kesimpulan
Untuk blog atau website konten-driven, Astro adalah pilihan yang sangat solid di 2025. Performanya luar biasa, DX-nya menyenangkan, dan hasilnya bersih.
Lighthouse score 100 bukan sekadar mimpi — itu default.