FARALF

Astro adalah static site builder modern yang menghadirkan performa sangat cepat dengan mengirimkan nol JavaScript secara default. Jika Anda membangun situs berbasis konten seperti blog, portofolio, atau halaman marketing, Astro adalah pilihan yang tepat.

Mengapa Astro?

Astro memperkenalkan beberapa konsep kunci yang membuatnya menonjol:

  • Nol JS secara default — Astro merender halaman Anda ke HTML statis, menghilangkan JavaScript yang tidak perlu.
  • Arsitektur Island — Anda dapat menambahkan komponen interaktif hanya di tempat yang dibutuhkan.
  • Agnostik Framework — Gunakan React, Vue, Svelte, atau HTML biasa dalam satu project yang sama.

Memulai

Untuk membuat project Astro baru, jalankan:

npm create astro@latest

Kemudian pilih template starter. Untuk blog, template “Blog” sudah termasuk dukungan bawaan untuk content collections markdown.

Menambahkan Content Collections

Content Collections Astro memungkinkan Anda mendefinisikan konten yang diketik dan divalidasi dalam markdown atau MDX. Berikut contoh cepat:

// src/content/config.ts
import { z, defineCollection } from 'astro:content';

const blogCollection = defineCollection({
  type: 'content',
  schema: z.object({
    title: z.string(),
    description: z.string(),
    date: z.date(),
  }),
});

export const collections = { blog: blogCollection };

Membangun Halaman

Anda dapat melakukan query pada content collections di halaman Astro mana pun:

---
import { getCollection } from 'astro:content';
const posts = await getCollection('blog');
---

Kemudian render sesuai keinginan — card, daftar, atau artikel penuh.

Deployment

Situs Astro dapat di-deploy ke Netlify, Vercel, Cloudflare Pages, atau host statis mana pun. Output build adalah HTML dan CSS murni, siap untuk edge.

Kesimpulan

Astro adalah alat yang kuat untuk membangun website cepat dan kaya konten. Pendekatan JavaScript minimalnya, dikombinasikan dengan dukungan framework yang fleksibel, membuatnya ideal untuk portofolio, blog, dan situs dokumentasi.