PerryTS/perry:README 来源编辑指南
基于 README、仓库元数据和许可证整理 PerryTS/perry 的安装与核验路径。
项目定位
PerryTS/perry 的 README 将项目描述为"A native TypeScript compiler written in Rust. Compiles TypeScript directly to executables using SWC and LLVM."。本文只整理仓库能直接核验的内容,不把星标、Fork 或宣传语当成质量证明。README 在"Perry"下的说明是:Perry compiles the TypeScript you already write into real machine-code executables , for macOS, Windows, Linux, iOS, Android, watchOS, and TV. No Node.js to install. No Electron to bundle. No runtime at all. Just a binary.。这给出的首先是项目边界,而不是已经完成的生产验证。
适用场景
从 README 的"Why developers pick Perry"和相关条目看,读者可以先判断它是否解决自己的具体问题:📦 Binaries you can actually email. Hello world is 330 KB. Perry links only the runtime your program uses. A real MongoDB GUI built with Perry ships as a 7 MB app.。如果你的目标与这段说明不一致,就不应仅凭项目热度采用它。这里保留原项目名、命令和组件名,方便回到一手来源核对。 README 还列出了另一条可核对的信息:⚡ Native speed, zero warmup. LLVM-optimized machine code with escape analysis, scalar replacement, and a generational GC , see the numbers above.。这类原文条目可以帮助读者设计试运行步骤,但不能代替自己的环境测试。
工作方式
README 把工作方式分散写在"The language you know. The deployment you wish it had."等段落中。可确认的线索包括:| | Perry | Node.js | Bun | Electron | |---|---|---|---|---| | What you ship | One native binary, from 330 KB | Your code + a Node install | One binary embedding the JS engine | App bundle with a browser engine | | Execution |。这篇整理没有把未写出的架构、性能或安全边界补成结论;真正的运行链仍应结合仓库目录、配置文件和版本标签检查。
安装与第一次运行
第一次安装应从 README 给出的入口开始。当前可复核的命令是: # Install (macOS · Linux · Windows) npm install -g @perryts/perry # or: brew install perryts/perry/perry # or: winget install PerryTS.Perry # Create and run a project perry init my-app && cd my-app perry run . 如果仓库没有提供命令,本文不会替它编造安装步骤,而是建议先打开 README 的"The language you know. The deployment you wish it had."部分,确认系统依赖、默认端口和首次初始化动作。
配置与日常使用
日常使用的细节取决于项目实际文档。README 的"Performance"段落提到:Ahead-of-time machine code means no engine boot and no JIT warmup , and on measured workloads, real multiples over the JS runtimes. Highlights from our open benchmark harnesses (Apple M1 Max, medians of repeated runs):。对于配置文件、环境变量、权限和数据目录,当前稿只记录来源明确的部分;未写明的默认值必须在测试环境中验证,并保留可回滚的配置副本。 同一部分还提到:🔌 Your Node code mostly just works. 97% pass rate on Node's own test suite across 53 node: modules , real implementations of fs, http/http2, net/tls, crypto, stream, childprocess, workerthreads, fetch and the web globals, plus 50 popular。