PerryTS/perry: README-based editorial guide
A guide grounded in the README, repository metadata, and license for installing and checking PerryTS/perry.
Project scope
PerryTS/perry describes itself in the README as "A native TypeScript compiler written in Rust. Compiles TypeScript directly to executables using SWC and LLVM.". This article keeps to facts that can be checked in the repository. Stars, forks, and promotional badges are signals of attention, not proof of quality. Under "Perry", the README says: 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.. That establishes the project's stated boundary, not a production test.
Suitable use cases
The README's "Why developers pick Perry" section gives a useful starting point for deciding whether the project fits: 📦 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.. If that problem is not yours, popularity is a poor reason to adopt it. Project names, commands, and component names are kept as written so a reader can return to the primary source without guessing at terminology. Another checkable README item is: ⚡ Native speed, zero warmup. LLVM-optimized machine code with escape analysis, scalar replacement, and a generational GC , see the numbers above.. It can shape a first test, but it does not replace testing in the intended environment.
How it works
The operating model is spread across sections such as "The language you know. The deployment you wish it had.". The source evidence includes: | | 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 |. This article does not turn missing architecture, performance, or security details into claims. A real deployment still needs a look at the repository layout, configuration files, and release history.
Installation and first run
Start installation from the README's documented entry point. A command that can be checked in the source is: # 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 . When the README contains no runnable command, this article does not invent one. Open its "The language you know. The deployment you wish it had." section and confirm system dependencies, default ports, and first-run initialization before using a public server.