Get Started with Perry

From zero to a running native executable in three steps. Native output does not need Node.js or an external JavaScript engine on the target machine; Perry's runtime and GC are linked into it.

Get Started

Install Perry and start compiling TypeScript to native executables

1Installation

terminal
$ npm install -g @perryts/perry

Recommended cross-platform install. Native targets still require the relevant platform SDK and linker; run perry doctor after installation.

2Usage

Verify the toolchain
perry doctor

Checks the compiler, linker, SDK, and target setup

Compile a file
perry compile main.ts

Compiles main.ts to a native executable

Custom output
perry compile main.ts -o myapp

Specify the output executable name

Check compatibility
perry check ./src

Validate TypeScript code for native compilation

Your first binary, step by step

Once Perry is installed, compiling TypeScript to a native executable is a single command. Write a file:

hello.ts
const name = process.argv[2] ?? "World";
console.log(`Hello, ${name}!`);

Compile it and run the result — the output is a self-contained machine-code binary, not a bundled script:

terminal

$ perry compile hello.ts

✓ Compiled executable: hello

$ ./hello Perry

Hello, Perry!

The published runtime-only hello-world measurement is about 3.2 ms on the documented Apple M-series test host. Real startup depends on the target, linked features, I/O, and hardware. Read more about how Perry compiles TypeScript to a binary or what happens inside the TypeScript native compiler.

Where to go next