Skip to content
Pear

News 3 min read

Pear Revolution

A few weeks ago we shared the story of how Pear has evolved from a single application platform to an embedded runtime supported by CLI tooling. Today those changes are officially live in Pear CLI v3.0.0. We have also completely reworked our documentation so getting started on Pear or transitioning to the new architecture is easier.

Pears News

Pear Revolution

No more pear run

The pear run command is removed as of v3. It’s superseded by a combination of pear-runtime a module which supplies a run() method for Bare workers and peer-to-peer over-the-air updates, the pear build command introduced in v2 for creating deployment folders and the new v3 command, pear install.


Peer-to-Peer Application & Binary Installation

Use pear install <link> to install any application or binary from a deployment created with pear build and deployed with pear.

For example, Keet’s production pear link is pear://17pwkcszz18deaccarhrrixhzf1f5ko1b1dz6j3pxhexebutjwzy, so Keet can be installed peer-to-peer with: 

pear install pear://17pwkcszz18deaccarhrrixhzf1f5ko1b1dz6j3pxhexebutjwzy

This will install the application to your system (e.g. on macOS it installs to /Applications/Keet.app) from peers - unless it’s already installed, and then pear install will refuse to overwrite.

Binaries are also supported. Declare a binary on the package.json bin field and use bare-build to create a binary with a matching name, deploy that with pear and then pear install can be used to install it to system - ~/.local/bin on macOS and Linux and %LOCALAPPDATA%\Programs\<app-name>\<bin-name>.exe on Windows.

To quickly make p2p installable applications use the boilerplates, we talked about them in the Hello Pear Boilerplates article. Use the hello-pear-electron boilerplate for applications, and the hello-pear-bare boilerplate for binaries.

The pear install command is backed by the pear-install module, the same installer can be invoked npx pear-install <link>, and it can also be used as a library so that a p2p app can allow users to install other apps peer-to-peer.

Pear is a build of Bare deployed with Pear

Pear CLI has always been deployed with Pear CLI but this iteration from pear run to pear-runtime OTA updates to pear install dead-ended updater logic that Pear CLI used internally to self-update and switch release branches. v3.0.0 also means no more pear sidecar --key for release switching.

We integrated the pear-runtime module into Pear CLI to replace the updater logic and aligned the architecture to create binary standalones. So Pear CLI is now also a Pear app and it can be installed to the system by the same pear-install module which means npx pear-install <link> can be used for release-line switching.

This also means the <pear-dir>/bin path no longer needs to be in system PATH. Pear v3 is installed to ~/.local/bin/pear on macOS and Linux and %LOCALAPPDATA%\Programs\pear\pear.exe on Windows.

Got Pear?

Binaries can also be downloaded directly from install.pears.com or you can directly install via npx, curl, irm

On macOS and Linux:

curl https://install.pears.com/pear.sh | sh

On Windows PowerShell:

irm https://install.pears.com/pear.ps1 | iex

With Node.js + npm:

npx pear@3

NOTE: If you’re already running Pear v2, use npx pear@3 for migration because it updates the PATH environment variable for v3. After install run pear -v to check that your system is resolving to the correct binary. If the version isn’t >= 3.0.0 then check your system PATH and remove <pear-dir>/bin from it.

From here?

From here, we don’t anticipate a new major for a long time; the architecture has collapsed down into what really seems like a stable state. From here, we’re focusing on depth, interoperability, stability and in time we’ll be seeing some interesting new features as the CLI aligns to complement the as-yet-unreleased-but-upcoming Pear Software Development Kit (SDK).


We’re excited about this release and stability and appraochability it brings to P2P app development. Let us know what you’re building or how the new architecture impacts your development in our public Keet channel:

keet://chat/yfo6dbyb4iz9bhhdq6nzq888dto4b4mxttz94i8ttaidrppwnmtehgn4so6u5jy9cfg41x7aoht5egf8354wjaz7eip5am37ie9ffy3gpq4bngkz35fx4f9zxpeo53qt679q4e8bjazbxoo356pz96c9munhaye

Share

Latest articles

View all articles

News

15 SEPT 2026

Pear Mobile: Deploy P2P OTA Updates to React-Native Apps

Pear mobile OTA updates are here. `pear-mobile` and `pear-runtime-react-native` bring peer-to-peer over-the-air updates to React Native applications on iOS and Android, deployed with the same Pear CLI flow that ships terminal binaries and desktop applications. An update carries the JavaScript bundle and arrives from peers. This article covers the architecture, the version rules that keep native and OTA releases in step, and how to quickly get started.

Read more

News

03 AUG 2026

Ecosystem Spotlight: swap - evergreen one-shot atomic exchange CLI

Ship a command as a standalone binary that updates itself peer-to-peer. swap is an applied demonstration of a peer-to-peer installable self-updating single-operation program. This is the first in our Ecosystem Spotlight series, looking at the libraries, tools and applications growing out of the Ecosystem of Pears.

Read more