tsrs: TypeScript Versi Rust 8x Lebih Cepat, Hemat 70% Memori
  easystem   21 Oktober 2026   Developer

Selama bertahun-tahun, keluhan paling umum developer TypeScript bukanlah soal sintaks atau tipe data, melainkan soal waktu tunggu. Menjalankan tsc di proyek besar bisa memakan puluhan detik sampai beberapa menit, dan memori yang dipakai type checker sering membuat laptop atau runner CI menyerah. Kabar baiknya datang pada 20 Oktober 2026: Cloudflare dan VoidZero mengumumkan tsrs, port compiler TypeScript ke Rust, dengan klaim hingga 8x lebih cepat dan sekitar 70% lebih hemat memori dibanding TypeScript 7.0.

Apa itu tsrs dan siapa yang menggarapnya

tsrs dikerjakan Cloudflare bersama VoidZero dan Max Schwenk (Owner.com), serta diinkubasi di dalam Oxc — toolchain compiler JavaScript berbasis Rust yang juga menaungi Oxlint dan Oxfmt. Proyek ini menyasar dua komponen sekaligus: tsc (compiler) dan language server, sehingga editor tetap mendapat fitur seperti go-to-definition dan error highlighting.

Yang penting digarisbawahi: ini bukan fork. Tim Cloudflare menyatakan secara eksplisit bahwa TypeScript tetap milik tim Microsoft dan mereka tidak ingin mengubah arah bahasa tersebut. Alasannya praktis — keputusan desain TypeScript kadang butuh bertahun-tahun eksplorasi, dan port yang berjalan sendiri akan cepat menyimpang lalu tidak kompatibel.

Angka benchmark: 8x lebih cepat, 70% lebih hemat memori

Dalam pengujian awal dengan jumlah type check worker yang sama, tsrs tercatat hingga 8x lebih cepat dan memakai memori sekitar 70% lebih sedikit dibanding TypeScript 7.0. Perlu konteks: TypeScript 7.0 sendiri (rilis Juli 2026) sudah merupakan port native ke Go yang disebut sekitar 10x lebih cepat dari TypeScript 6.0. Jadi angka 8x ini diukur di atas compiler yang sudah sangat cepat.

Menariknya, kolaborasi ini mengalir dua arah. Sebagian optimasi dari tsrs di-upstream ke basis kode Go milik Microsoft, sehingga TypeScript 7.1 Beta (dirilis hari yang sama, 20 Oktober 2026) kini disebut hingga 2,5x lebih cepat dari 7.0. Tim Cloudflare juga menyebut mereka menyamakan konfigurasi benchmark dengan tim TypeScript, karena banyak klaim performa port lain muncul dari penggunaan mesin yang lebih besar atau opsi yang tidak setara default.

Kenapa Rust, padahal Go sudah cepat

Jawabannya bukan sekadar kecepatan, tetapi portabilitas lewat WebAssembly. Saat program Go dikompilasi ke Wasm, garbage collector-nya ikut dibawa. Rust mengelola memori tanpa GC, sehingga interaksi memori antara modul Wasm dan host jauh lebih ringan. Bagi Cloudflare yang menjalankan banyak proses di Cloudflare Workers, jejak memori kecil berarti toolchain pengembangan bisa dijalankan di tempat yang sebelumnya mustahil: sandbox agent, browser, perangkat embedded, atau aplikasi IoT.

Ini juga menjelaskan mengapa proyek seperti ini muncul sekarang. Model AI frontier sudah mampu melakukan port besar-besaran dalam hitungan hari, sehingga biaya eksperimen port TypeScript ke Rust atau C++ turun drastis.

Cara mencoba tsrs di proyek Anda

Paket tsrs sudah tersedia di npm dan masih berstatus eksperimental. Versi yang terpasang saat artikel ini ditulis adalah 0.18.0-ts7.1.0-dev, jadi jangan langsung dipakai di pipeline produksi.

  1. Pastikan Node.js sudah terpasang (gunakan versi LTS agar aman).
  2. Pasang paket di proyek: npm install tsrs
  3. Jalankan type check: npx tsrs
  4. Bandingkan waktu dan pemakaian RAM dengan compiler standar pada proyek yang sama, misalnya dengan /usr/bin/time -v npx tsrs di Linux.
  5. Catat selisihnya sebelum memutuskan apakah layak masuk CI.
# coba cepat di proyek yang sudah ada
npm install tsrs
npx tsrs --noEmit

# bandingkan dengan compiler standar
/usr/bin/time -v npx tsc --noEmit

Bagaimana proyek ini dijaga tetap sinkron

Risiko terbesar port semacam ini adalah diam-diam berperilaku beda dari TypeScript resmi. Cloudflare memakai pola yang sama seperti saat mereka memelihara Vinext (port Next.js): setiap pagi sebuah agent meninjau perubahan upstream dan membuka tracking issue, setiap malam compatibility matrix diregenerasi dengan menjalankan test suite. Ketika ada celah, agent diminta membuat reproduksi, mem-port test terkait, dan mengusulkan perbaikan.

Selain itu, tsrs akan digabung dengan tsc-rs (proyek Theo Browne) menjadi satu paket yang mendukung seluruh fitur TypeScript, termasuk Language Server Protocol dan content mappers. Tim juga mengakui masih ada perbedaan kecil, misalnya urutan diagnostik yang dicetak, dan menargetkan perbedaan itu seminimal mungkin sebelum rilis stabil.

Apa artinya untuk tim developer dan pengelola TI di Indonesia

Untuk tim yang mengelola banyak proyek frontend di VPS kecil, dampak paling terasa ada di dua tempat: runner CI dan mesin developer. Type check yang tadinya butuh RAM besar bisa berjalan di kontainer yang lebih kecil, dan build pipeline jadi lebih cepat — terutama jika nanti integrasinya masuk ke Oxlint untuk aturan lint yang sadar tipe.

  • Sekarang: pantau repositori Oxc/tsrs, uji di satu proyek internal, kumpulkan angka nyata.
  • Jangan: mengganti compiler standar di produksi selama statusnya masih eksperimental dan urutan diagnostik belum identik.
  • Perhatikan: TypeScript 7.1 Beta yang sudah membawa optimasi hasil kolaborasi ini — bisa dicoba dengan npm install -D typescript@beta.

Intinya, persaingan tooling JavaScript sekarang bergerak ke arah performa native dan efisiensi memori. Bagi developer, ini kabar bagus: menunggu compiler bukan lagi hal yang harus diterima sebagai takdir.

Sumber:
Cloudflare Blog — Introducing tsrs: A port of TypeScript to Rust (20 Oktober 2026)
The New Stack — "We are not forking TypeScript": Cloudflare spearheads Rust port written by agents, for agents
Microsoft TypeScript Blog — Announcing TypeScript 7.1 Beta
npm — paket tsrs (0.18.0-ts7.1.0-dev)
GitHub — oxc-project/tsrs

Tags :

typescript , rust , tsrs , compiler , cloudflare

Bagikan :