Get Started with Perry

From zero to a running native executable in three steps. No Node.js, no bundler, no runtime to install on the target machine.

Get Started

Install Perry and start compiling TypeScript to native executables

1Installation

terminal
$ brew tap PerryTS/perry
$ brew install perry

Requires Homebrew. Supports macOS arm64 and x86_64.

2Usage

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

With V8 runtime
perry compile main.ts --enable-js-runtime

Enable V8 for JavaScript npm package compatibility

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!

That binary starts in about a millisecond and runs on any machine with the same OS and architecture — nothing to install first. Read more about how Perry compiles TypeScript to a binary or what happens inside the TypeScript native compiler.

Where to go next