TanStack secara resmi telah berhenti menggunakan React Server Components (RSC) dalam pustaka-pustakanya, dengan alasan kompleksitas tambahan, berkurangnya fleksibilitas, peningkatan performa yang moderat, dan kecepatan pengembangan yang melambat sebagai faktor penentu. Langkah ini penting bagi siapa pun yang membangun alat berbasis React, karena pustaka TanStack diadopsi secara luas dan sering kali menetapkan standar praktis bagi ekosistem tersebut.
Mengapa RSC tampak menarik
React Server Components hadir sebagai cara untuk mengalihkan beban pengambilan data (data-fetching) dan proses rendering yang berat ke server, yang menjanjikan ukuran bundle klien yang lebih kecil dan pemuatan halaman yang lebih cepat. Tim TanStack mencoba pendekatan tersebut, dengan harapan dapat meningkatkan pengalaman pengguna pada pustaka data-grid dan query mereka.
Apa yang membuat mereka menjauh
- Kompleksitas – Melakukan debugging pada kode RSC memaksa penggunaan model mental yang terpisah. Tim menghabiskan lebih banyak waktu untuk melacak masalah server-side rendering daripada yang seharusnya.
- Fleksibilitas – Banyak pustaka pihak ketiga mengasumsikan lingkungan klien murni. Eksekusi RSC yang hanya berjalan di sisi server membuat integrasi menjadi sulit tanpa harus menulis ulang atau membuat shim untuk dependensi tersebut.
- Performa – Peningkatan kecepatan yang terukur tergolong moderat. Beban (overhead) dalam mengoordinasikan batasan antara server dan klien lebih besar daripada keuntungan marginal yang didapat dalam sebagian besar skenario dunia nyata.
- Kecepatan (Velocity) – Pola yang lebih sederhana dan hanya berbasis klien memungkinkan tim untuk merilis pembaruan lebih cepat. Dengan RSC, setiap perubahan memerlukan validasi baik di sisi server maupun klien, yang memperlambat siklus rilis.
Dampak yang lebih luas
Jika toolkit terkemuka seperti TanStack mundur dari RSC, proyek lain mungkin akan mempertimbangkan kembali tren tersebut. Keputusan ini menyoroti sebuah trade-off: fitur mutakhir dapat menimbulkan biaya tersembunyi yang merugikan produktivitas pengembang dan pemeliharaan jangka panjang. Perusahaan yang memprioritaskan iterasi cepat dan kompatibilitas pustaka yang luas mungkin akan melakukan hal yang sama.
Sudut pandang lain
Beberapa pengembang masih melihat nilai dalam RSC untuk kasus penggunaan tertentu—terutama di mana pemrosesan data di sisi server dapat secara drastis mengurangi ukuran payload. Pendekatan ini mungkin akan berevolusi, dan alat bantu di masa depan mungkin dapat mengatasi kendala yang diidentifikasi oleh TanStack. Untuk saat ini, konsensus yang ada masih beragam.
Apa yang perlu diperhatikan selanjutnya
- Pembaruan alat bantu (Tooling updates) – Peningkatan dalam dukungan debugging dan integrasi dapat menurunkan hambatan kompleksitas.
- Umpan balik komunitas – Seiring semakin banyak tim yang membagikan data performa, persamaan biaya-manfaat (cost-benefit) mungkin akan berubah.
- Pola alternatif – Teknik rendering server inkremental atau pendekatan hibrida mungkin dapat menawarkan jalan tengah.
Kesimpulan: Mundurnya TanStack dari React Server Components mengingatkan kita bahwa yang lebih baru tidak selalu lebih baik; pengembang harus menimbang biaya nyata terhadap alur kerja mereka dibandingkan dengan keuntungan yang dijanjikan sebelum mengadopsi pola-pola baru yang muncul.
Sumber: https://tanstack.com/blog/we-stopped-using-rsc-on-tanstack-com
