Episode ini menelusuri sejarah Remix: dari project pribadi Michael Jackson dan Ryan Florence, open source pada 2021, akuisisi Shopify pada 2022, hingga v3 yang menyatu dengan React Router v7. Kalian juga memahami filosofi server-first dan masalah yang diselesaikan Remix dibandingkan SPA murni.

Di episode 0 kalian sudah menyiapkan environment. Sekarang saatnya memahami dari mana Remix berasal dan mengapa framework ini layak dipelajari. Setiap teknologi lahir dari masalah tertentu, dan Remix lahir dari frustrasi panjang terhadap cara membangun aplikasi web modern.
Remix diciptakan oleh Michael Jackson dan Ryan Florence — dua nama yang tidak asing di ekosistem React, karena mereka juga pencipta React Router, library routing paling banyak dipakai untuk React. Pengalaman membangun routing mengarahkan mereka pada pertanyaan besar: kenapa aplikasi web modern terasa lebih lambat dan lebih rapuh daripada web klasik yang sederhana?
Episode 1 ini menjadi fondasi mental kalian. Dengan memahami sejarah dan filosofi, seluruh konsep teknis di episode-episode berikutnya — loader, action, nested route, progressive enhancement — akan terasa logis, bukan sekadar fitur yang harus dihafal.
Remix pertama kali diumumkan sebagai private beta pada 2020. Saat itu, arsitektur yang diusung terasa melawan arus: sebagian besar pengembang beralih ke SPA murni, sementara Remix justru mengembalikan komputasi ke server. Beta tertutup ini berjalan hampir setahun, dan tim mengundang komunitas untuk mencoba pola loader, action, dan nested route sebelum open source.
Pada November 2021, Remix resmi menjadi open source dengan lisensi MIT. Setahun kemudian, tepatnya Oktober 2022, Remix diakuisisi oleh Shopify — raksasa e-commerce yang memakai React secara besar-besaran. Akuisisi ini mengamankan pendanaan pengembangan penuh waktu, dan posisi Remix semakin kuat sebagai framework full-stack React resmi untuk platform web besar.
Remix v2 dirilis pada November 2023 dengan sejumlah modernisasi: dukungan penuh Vite, konvensi route tanpa perlu menghafal aturan lama, dan remix.config.js yang mulai digantikan vite.config.ts. Lanjutnya, pada November 2024, Remix v3 dirilis dengan penyatuan bersejarah: Remix menyatu dengan React Router v7.
npm view remix versions --json
npm view create-remix time --jsonDengan penyatuan ini, npm view create-remix time --json menunjukkan tanggal rilis resmi scaffolder. Tim yang sama mengelola satu fondasi routing, sehingga inovasi apa pun di React Router langsung tersedia di Remix.
Rangkuman tonggak sejarah yang perlu kalian ingat:
Info
Istilah di luar itu juga penting: "Remix" bisa merujuk pada kerangka kerja sekaligus aplikasi web bernama Remix. Dalam series ini, Remix selalu berarti framework React kecuali disebutkan lain.
Filosofi inti Remix berbunyi: server yang memegang data. Alih-alih menulis REST API terpisah lalu memanggilnya dari client, Remix memakai fungsi loader yang berjalan di server dan mengirim data langsung ke komponen. Browser menerima HTML yang sudah berisi data, bukan halaman kosong yang menunggu fetch.
Remix percaya aplikasi harus berfungsi bahkan tanpa JavaScript di sisi client. Karena navigasi memakai tag a dan formulir memakai tag form biasa, Remix memakai ulang perilaku native browser sebagai fondasi. JavaScript hanya menjadi peningkatan: navigasi halus, validasi cepat, dan optimistic UI. Pola ini disebut progressive enhancement.
Di arsitektur SPA, satu halaman sering memerlukan beberapa state: loading, error, dan sukses, masing-masing dengan kode sendiri. Remix memindahkan tanggung jawab itu ke server. Satu fungsi loader berjalan saat halaman diminta, dan hasilnya tersedia sebelum komponen me-render. Remix menangani alur loading dan error di lapisan server, sehingga komponen fokus pada rendering.
import { useLoaderData } from "@remix-run/react";
export async function loader() {
const data = { nama: "Belajar Remix", totalEpisode: 24 };
return data;
}
export default function Beranda() {
const data = useLoaderData();
return <h1>Series {data.nama}</h1>;
}Perhatikan bahwa loader mengembalikan objek biasa — sejak Remix v3 dengan single fetch, tidak wajib lagi membungkusnya dengan helper json. Kombinasi loader dan useLoaderData inilah yang menggantikan useEffect fetch di SPA.
Remix memakai nested routing: URL tidak sekadar dipetakan ke satu halaman, tetapi ke hierarki layout. Bagian halaman yang tetap, seperti sidebar, hanya di-render sekali dan tidak perlu di-ulang saat navigasi. Konsekuensinya, hanya data dari bagian yang berubah yang di-load ulang. Ini menghasilkan navigasi yang terasa instan dan hemat bandwidth.
Posisi Remix berada di tengah spektrum. SPA murni lemah di SEO, first load, dan aksesibilitas; framework server-rendered klasik lemah dalam interaktivitas dan state. Remix menggabungkan keduanya: HTML di-render di server, lalu di-hydrate menjadi aplikasi interaktif penuh. Kalian mendapatkan yang terbaik dari dua dunia tanpa menulis dua aplikasi.
Saat ini Remix bersaing di kategori yang sama dengan Next.js dan SvelteKit. Perbedaan utamanya adalah kesetiaan pada model web: Remix lebih sedikit mengintervensi request-response native dan sangat bergantung pada konvensi route yang eksplisit. Banyak developer memilih Remix ketika mereka menginginkan kontrol penuh atas HTTP, caching, dan streaming — topik yang akan dibahas mulai episode 8.
Perlu dicatat juga posisi Remix terhadap React Router. Karena keduanya kini dikelola tim yang sama, skill routing yang kalian pelajari di sini tetap berlaku jika kalian membangun aplikasi React tanpa framework penuh. Menguasai Remix berarti menguasai React Router juga, dua keahlian yang saling melengkapi di dunia kerja.
Sebagai penutup pembahasan ini: jangan terjebak pada perdebatan framework mana yang paling cepat. Perbedaan performa antar framework modern umumnya kecil dibanding pengaruh keputusan arsitektur kalian sendiri. Fokuslah memahami model mental Remix — di situlah nilai jangka panjangnya berada.
Untuk developer yang baru mulai, keputusan praktisnya sederhana: jika kalian sudah nyaman dengan React dan ingin memahami arsitektur web secara utuh, Remix adalah pilihan belajar yang sangat baik. Serangkaian keputusan desain yang diambil Remix akan mengajarkan kalian bagaimana web bekerja sesungguhnya.
Episode 1 memberi kalian konteks: Remix lahir dari pengalaman membangun React Router, resmi open source pada 2021, diakuisisi Shopify pada 2022, dan sejak v3 menyatu dengan React Router v7. Filosofinya server-first dan progressive enhancement menjawab kelemahan SPA murni maupun SSR tradisional.
Inti yang harus dibawa pulang:
Di episode 2 selanjutnya kita akan membahas konsep dasar dan arsitektur utama Remix — bagaimana routing berbasis filesystem bekerja, peran loader dan action sebagai data handler di server, alur server rendering versus client hydration, serta komponen-komponen utama dalam project Remix. Siapkan pola pikir server-first kalian, karena mulai sekarang kita masuk ke mesin Remix yang sesungguhnya.