BookinglyTech News
Software

Vercel Labs lanza scriptc, un compilador TypeScript‑to‑Native que elimina la dependencia de Node y V8

Scriptc convierte TypeScript en ejecutables nativos de 370 KB sin motor JavaScript, con un inicio de CLI 12 × más rápido que Node y 72 × menos memoria.

2 min de lecturaInfoQ0 vistas

Vercel Labs acaba de publicar scriptc, un compilador experimental bajo licencia Apache 2.0 que transforma código TypeScript en ejecutables nativos, eliminando Node, V8 y cualquier motor JavaScript embebido. El repositorio, creado el 22 julio 2026, ya cuenta con 4.9 k estrellas.

Scriptc sigue el flujo habitual de TypeScript: el compilador original se usa para parsear y validar tipos; el programa se baja a un IR tipado y luego se emite C, LLVM IR, ensamblador, objetos, binarios nativos o WebAssembly vía WASI Preview 1. Los constructos se clasifican en tres capas: por defecto se compilan estáticamente; con la opción --dynamic se ejecutan en un motor QuickJS‑ng de ~620 KB; o se rechazan en tiempo de compilación con un código SC y una sugerencia de reescritura.

Un benchmark con scriptc 0.0.16 contra Bun 1.3.12 y Node 24.18.0 mostró un inicio de CLI mediano de 1.78 ms frente a 21.29 ms (Bun) y 61.78 ms (Node), y una memoria en reposo de 1.9 MiB para un servidor node:http sin framework. Cuando Hono necesitó --dynamic, el rendimiento cayó a 18.4 k rps frente a los 70.5 k de Bun.

Algunos usuarios en Hacker News informaron que scriptc es 7.5 × más lento que Node 24 en tiempo de ejecución, aunque el binario inicia 12 × más rápido y consume 72 × menos memoria. El proyecto admite macOS, Linux, Windows y WASI, y obliga a usar Node 24 o superior; la instalación es vía npm install -g scriptc.

Las limitaciones se documentan en la guía de dependencias y en la página de divergencias deliberadas: las cadenas se almacenan en UTF‑8, la memoria se cuenta por referencia, Object.keys devuelve el orden de declaración y process.argv[0] es "scriptc". El soporte de paquetes se gestiona con el flag experimental --npm-static, que compila los paquetes nombrados fuera de la isla.

El desarrollo de scriptc sigue siendo experimental, pero la comunidad ya está probando casos de uso: desde servidores ligeros hasta agentes de código que generan cientos de líneas en una semana. La pregunta que persiste es si el enfoque de compilar TypeScript a binarios nativos sin Rust o C será viable a largo plazo, dadas las divergencias y la falta de optimizaciones en tiempo de ejecución.

Para profundizar en la arquitectura de scriptc, visita su repositorio en GitHub y la introducción oficial.