Andromeda - Runtime JavaScript/TypeScript yang Diimplementasikan dengan Rust
(tryandromeda.dev)- Menawarkan kecepatan eksekusi tinggi dan keamanan berdasarkan Nova, mesin JavaScript/WebAssembly berbasis Rust, serta Oxc, kompiler JS
- Mendukung TypeScript tanpa konfigurasi, Canvas API 2D dengan akselerasi GPU, Web Crypto, SQLite, Web Storage, dan Web API yang komprehensif
- Menyediakan toolchain terintegrasi untuk pengembang (REPL, formatter, bundler, kompiler executable tunggal) serta LSP bawaan yang dapat digunakan di berbagai editor
- Dibandingkan Node.js dan Deno yang ada, Andromeda menggunakan memori lebih sedikit dan unggul dalam TypeScript, pemrosesan grafis, serta kompilasi file tunggal
- Runtime serbaguna yang mendukung aplikasi web generasi berikutnya, visualisasi data, game, skrip berkinerja tinggi, layanan web, hingga komputasi ilmiah
Spesifikasi teknis
- Arsitektur: runtime berbasis Rust, mesin Nova, model multithread, struktur data zero-copy
- Standar web: WHATWG Fetch API, W3C Canvas 2D, Web Crypto, TextEncoder/Decoder, patuh WinterTC
- Kinerja: waktu mulai di bawah 10ms, akselerasi perangkat keras, pengelolaan memori dan resolusi modul yang dioptimalkan
- Keamanan: eksekusi sandbox, API berbasis izin, keamanan Rust, menyediakan kriptografi yang aman
- Dukungan platform: Linux, macOS(Intel/Apple Silicon), Windows, Docker, cross-compilation
Perbandingan dengan Node.js dan Deno
- Penggunaan memori: Andromeda ~12MB, Node.js ~40MB, Deno ~25MB
- TypeScript: Andromeda terpasang bawaan, Node.js memerlukan konfigurasi tambahan, Deno mendukung secara native
- Grafik: Andromeda mendukung Canvas dengan akselerasi GPU, Node.js tidak mendukung, Deno mendukung sebagian
- Kompilasi file tunggal: Andromeda native, Node.js pihak ketiga, Deno bawaan
- Model keamanan: Andromeda aman secara memori + berbasis izin, Node.js berfokus pada pemeriksaan saat runtime
8 komentar
Hal seperti nodejs cukup merepotkan kalau ingin di-binding ke aplikasi lain, jadi semoga bisa dibuat lebih mudah.
Belakangan ini banyak hal terkait Rust bermunculan ya..
Bun saja masih jauh dari kompatibel 100% dengan API nodejs, jadi yang ini kira-kira akan butuh waktu berapa lama ya?
Tampaknya, kunci keberhasilan proyek seperti ini adalah bagaimana ia berintegrasi dengan ekosistem pustaka npm yang sangat besar... dikembangkan dengan spesifikasi API yang sama seperti nodejs, sehingga cukup mengganti runtime saja... jika bisa tetap kompatibel sambil meminimalkan biaya perubahan pada codebase yang sudah ada dan sedang berjalan... tapi sejak awal nodejs sendiri juga tidak terlalu boros memori sih, haha
Ini runtime JavaScript, tapi tidak memakai V8 ya? Wow
https://id.news.hada.io/topic?id=17845
Artikel di atas menjelaskan tentang engine tersebut!
Kenapa tidak ada pembahasan soal Bun...
,iya ya, saya juga membacanya sambil langsung kepikiran hal yang sama