Vercel Labs hat scriptc veröffentlicht, einen Open-Source-Compiler, der mit dem klassischen JavaScript-Runtime-Modell bricht: Statt TypeScript nach JavaScript zu übersetzen, erzeugt er direkt native Binaries für verschiedene Plattformen. Bei statischer Kompilierung ist weder Node.js noch eine JavaScript-Engine nötig; nur in Ausnahmefällen enthält das Executable eine eingebettete JavaScript-Runtime.

Die Benchmarks auf der GitHub-Seite des Projekts, ermittelt auf einem nicht näher spezifizierten Apple-M-System, vergleichen scriptc mit ähnlichen Workloads in Node.js, Go, Rust und Zig. In einem Beispielprojekt verkürzte sich die Startzeit demnach von 47 Millisekunden unter Node.js auf 2,4 Millisekunden. Das statische Binary belegt rund 200 KByte gegenüber etwa 2 MByte beim Go-Äquivalent, und der maximale Arbeitsspeicherverbrauch lag bei 4 MByte statt bis zu 116 MByte bei Node.js.

Für möglichst hohe Kompatibilität mit bestehendem Node.js-Code implementiert scriptc große Teile der Node.js-API nativ, darunter fs, path, crypto, http, https, net, dns, timers und fetch. Bei dynamischen Features wie npm-Abhängigkeiten oder mit any typisiertem Code enthält das Binary zusätzlich die JavaScript-Engine QuickJS-NG.

Installiert wird scriptc über npm install -g scriptc; als Compiler-Frontend ist Clang erforderlich. Primäre Plattform ist macOS arm64, Linux- und Windows-Binaries entstehen per Cross-Compilation. Das Projekt befindet sich in einem sehr frühen Stadium (Version 0.0.x) und hat noch keinen stabilen Release-Status.