[{"path":"/docs","title":"介绍","group":"开始使用","description":"scriptc 把 TypeScript 编译为原生可执行文件的核心理念与静态层级说明","headings":[{"text":"理念：看得见的静态性","slug":"理念看得见的静态性"},{"text":"哪些能静态编译","slug":"哪些能静态编译"},{"text":"逃生舱及其代价","slug":"逃生舱及其代价"},{"text":"以正确性为方法论","slug":"以正确性为方法论"},{"text":"下一步看什么","slug":"下一步看什么"}],"body":""},{"path":"/docs/quickstart","title":"快速开始","group":"开始使用","description":"从 npm 安装 CLI，在几分钟内编译出第一个原生可执行文件","headings":[{"text":"前置条件","slug":"前置条件"},{"text":"安装","slug":"安装"},{"text":"你的第一个可执行文件","slug":"你的第一个可执行文件"},{"text":"看看什么能编译","slug":"看看什么能编译"},{"text":"使用一个 npm 依赖","slug":"使用一个-npm-依赖"},{"text":"下一步","slug":"下一步"}],"body":""},{"path":"/docs/coverage","title":"覆盖率报告","group":"指南","description":"分析你的程序有多少语句能静态编译为原生代码","headings":[{"text":"完全静态的程序","slug":"完全静态的程序"},{"text":"含动态残余的程序","slug":"含动态残余的程序"},{"text":"--dynamic 视图","slug":"--dynamic-视图"},{"text":"内嵌内置模块报告","slug":"内嵌内置模块报告"},{"text":"阻塞线的含义","slug":"阻塞线的含义"},{"text":"类型错误会拦下分析","slug":"类型错误会拦下分析"},{"text":"外部宿主的类型接口","slug":"外部宿主的类型接口"}],"body":""},{"path":"/docs/dependencies","title":"npm 依赖","group":"指南","description":"通过 --dynamic 内嵌 quickjs-ng 引擎运行 npm 包的动态孤岛机制","headings":[{"text":"孤岛的故事","slug":"孤岛的故事"},{"text":"孤岛是什么","slug":"孤岛是什么"},{"text":"--npm-static（实验性）","slug":"--npm-static实验性"},{"text":"--provenance-sources（实验性）","slug":"--provenance-sources实验性"},{"text":"这套设计能撑多大","slug":"这套设计能撑多大"},{"text":"当前限制","slug":"当前限制"}],"body":""},{"path":"/docs/native-objects","title":"原生程序对象","group":"指南","description":"说明 --emit=obj 产物的 ABI、链接信息与外部原生链接方式","headings":[{"text":"ABI 与运行时约定","slug":"abi-与运行时约定"},{"text":"机器可读的链接信息","slug":"机器可读的链接信息"},{"text":"以 C 编译器作为链接驱动","slug":"以-c-编译器作为链接驱动"},{"text":"直接调用 Apple 链接器","slug":"直接调用-apple-链接器"}],"body":""},{"path":"/docs/ffi","title":"原生 FFI","group":"指南","description":"通过严格的 JSON 清单，让静态编译的 TypeScript 直接调用 C ABI 符号","headings":[{"text":"替换 Node-API 插件","slug":"替换-node-api-插件"},{"text":"ABI 类别","slug":"abi-类别"},{"text":"回调与上下文指针","slug":"回调与上下文指针"},{"text":"清单字段","slug":"清单字段"},{"text":"边界规则与当前限制","slug":"边界规则与当前限制"}],"body":""},{"path":"/docs/platforms","title":"平台支持","group":"指南","description":"scriptc 支持的目标平台、交叉编译方式与各交叉目标的限制","headings":[{"text":"自有 LLVM 目标","slug":"自有-llvm-目标"},{"text":"经由 zig 交叉编译","slug":"经由-zig-交叉编译"},{"text":"Linux（arm64、x86_64）","slug":"linuxarm64x86_64"},{"text":"Windows（x86_64）","slug":"windowsx86_64"},{"text":"iOS 与 Android（arm64，库模式）","slug":"ios-与-androidarm64库模式"},{"text":"WebAssembly（WASI Preview 1）","slug":"webassemblywasi-preview-1"},{"text":"交叉目标限制","slug":"交叉目标限制"},{"text":"汇总","slug":"汇总"}],"body":""},{"path":"/docs/cli","title":"命令行参考","group":"参考","description":"scriptc 命令、参数 flag 与环境变量的完整参考。","headings":[{"text":"scriptc build","slug":"scriptc-build"},{"text":"scriptc run","slug":"scriptc-run"},{"text":"scriptc coverage","slug":"scriptc-coverage"},{"text":"scriptc cache warm","slug":"scriptc-cache-warm"},{"text":"选项","slug":"选项"},{"text":"环境变量","slug":"环境变量"},{"text":"后端","slug":"后端"},{"text":"工具要求","slug":"工具要求"}],"body":""},{"path":"/docs/how-it-works","title":"工作原理","group":"参考","description":"从 tsc 前端到类型化 IR、LLVM 后端、链接与运行时的完整编译管线","headings":[{"text":"编译管线","slug":"编译管线"},{"text":"运行时","slug":"运行时"},{"text":"正确性保障：差分测试","slug":"正确性保障差分测试"},{"text":"动态岛","slug":"动态岛"},{"text":"仓库布局","slug":"仓库布局"}],"body":""},{"path":"/docs/limitations","title":"限制","group":"参考","description":"scriptc 静态编译不支持的边界、设计层面的行为差异与各目标的限制","headings":[{"text":"原生调试","slug":"原生调试"},{"text":"尚不能编译的内容（截至目前）","slug":"尚不能编译的内容截至目前"},{"text":"设计层面的差异","slug":"设计层面的差异"},{"text":"动态层级限制","slug":"动态层级限制"},{"text":"原生插件","slug":"原生插件"},{"text":"WASI 目标限制","slug":"wasi-目标限制"},{"text":"工具链缺口","slug":"工具链缺口"}],"body":""},{"path":"/docs/compatibility","title":"Node.js 24 兼容性","group":"参考","description":"Node API 兼容性台账的数据分层与七种状态的判定依据","headings":[{"text":"概览","slug":"概览"},{"text":"数据来源与产物分层","slug":"数据来源与产物分层"},{"text":"输入与支撑清单","slug":"输入与支撑清单"},{"text":"内部台账与公开产物","slug":"内部台账与公开产物"},{"text":"状态一览","slug":"状态一览"},{"text":"静态层级与动态层级","slug":"静态层级与动态层级"},{"text":"更新与校验","slug":"更新与校验"}],"body":""}]