AMAZINGINDEX.COM 让生活多一点 Amazing
46.5
VOL. 2026.09
2026.09.28
← 返回 2026.09.28 日报
日报快照 · Daily Snapshot
NO. 002

TS/JS 直接编译原生可执行文件

#REPO GitHub Trending 2026.09.28
推荐指数 68.0 NO. 002 · 2026.09.28
Stars5,348

scriptc 将 TypeScript/JavaScript 编译为 C、LLVM IR、原生汇编和 WebAssembly,静态构建无需 Node 或 JS 引擎。对需要原生性能又不想切到 Rust/Go 的前端团队是重要新选项。

TypeScript-to-Native Compiler

之前 TS/JS 走原生性能路线基本只有 Deno 的 rusty_v8 或 Bun 的 Zig 运行时,本质还是绑着 JS 引擎。scriptc 的思路更接近 AssemblyScript 或 Javy,但直接出可读 C 和 LLVM IR,调试和 FFI 友好度更高。

跟 Bun 比,scriptc 牺牲动态特性换静态编译;跟 AssemblyScript 比,它兼容标准 TS 类型系统。关键限制是「不能静态编译就报错」,这意味着大量 npm 包需要走 quickjs-ng 嵌入,性能预期要打折扣。

最适合的场景:CLI 工具、边缘计算冷启动敏感型服务、需要给 C/C++ 项目写插件但又不想学 Rust 的团队。建议先测你的核心依赖能不能过静态编译,再决定是否投入。

Star History
Experimental

填补前端团队原生性能需求的TS静态编译工具空白

独特价值:唯一支持TS到多后端原生目标且零运行时依赖的编译器

竞品:
AssemblyScript/assemblyscript ★ 16.2k 仅编译至Wasm,scriptc额外支持C/LLVM/原生汇编
bun-sh/bun ★ 72.6k JS运行时非编译器,scriptc静态编译无引擎依赖
swc-project/swc ★ 30.5k Rust编写的JS编译器,仅转译不生成原生代码
quickjs-ng/quickjs ★ 8.9k 嵌入式JS引擎,scriptc彻底脱离运行时
goplus/gop ★ 9.8k Go方言非TS,scriptc保留前端技术栈
查看原文 →