Tutorial Astro Framework: Membangun Website Cepat dengan Island Architecture

Memulai Astro Framework

Astro adalah framework web modern yang berfokus pada kecepatan konten dengan pendekatan Island Architecture. Berbeda dengan framework SPA (Single Page Application) tradisional, Astro mengirimkan HTML statis ke browser dan hanya memuat JavaScript untuk komponen interaktif yang diperlukan saja. Ini menghasilkan skor Core Web Vitals yang optimal.

Langkah Instalasi dan Inisialisasi

Pastikan Anda telah menginstal Node.js versi 18.14.1 atau lebih baru. Gunakan perintah berikut untuk memulai proyek baru:

# Inisialisasi proyek baru
npm create astro@latest

# Masuk ke direktori proyek
cd nama-proyek

# Jalankan server pengembangan
npm run dev

Struktur Proyek Utama

Direktori/FileFungsi Utama
src/pages/Routing berbasis file (file .astro menjadi route)
src/components/Komponen UI yang dapat digunakan kembali
src/layouts/Template wrapper untuk halaman
public/Aset statis (gambar, font, favicon)
astro.config.mjsKonfigurasi utama framework

Konsep Island Architecture

Kekuatan utama Astro terletak pada kemampuannya untuk melakukan partial hydration. Anda dapat menentukan kapan JavaScript sebuah komponen dimuat menggunakan direktif klien:

<!-- Komponen dimuat saat halaman selesai dimuat -->
<MyComponent client:load />

<!-- Komponen dimuat saat masuk ke viewport -->
<MyComponent client:visible />

<!-- Komponen dimuat saat idle -->
<MyComponent client:idle />

Tips Troubleshooting Lapangan

  • Masalah Build: Jika terjadi error saat build, pastikan semua dependensi di package.json kompatibel dengan versi Astro terbaru. Jalankan npm install ulang jika perlu.
  • Integrasi Framework: Astro mendukung integrasi React, Vue, Svelte, dan Solid. Gunakan perintah npx astro add react untuk menambahkan dukungan framework secara otomatis.
  • SEO: Gunakan komponen <SEO /> atau buat file head khusus di dalam layout untuk mengelola meta tag secara dinamis.

Astro sangat direkomendasikan untuk situs berbasis konten seperti blog, portofolio, atau situs e-commerce yang mengutamakan kecepatan akses dan SEO yang superior.