PearPass Desktop — Open-Source Peer-to-Peer Password Manager Built on Pear Runtime

Published: (December 21, 2025 at 12:04 PM EST)
2 min read
Source: Dev.to

Source: Dev.to

Why This Project Is Cool (and Why Devs Should Care)

PearPass Desktop is interesting for more than just end‑user security:

  • Peer‑to‑peer / distributed sync mindset (no classic “one cloud to breach” architecture)
  • Open‑source by default (easier to audit and extend)
  • Modern desktop stack (Pear Runtime + React ecosystem)

Great real‑world reference for:

  • crypto + security UX
  • local‑first apps
  • end‑to‑end encryption product design
  • multi‑device sync without centralized infra

SEO keywords naturally covered: open‑source password manager, peer‑to‑peer password vault, local‑first security app, end‑to‑end encrypted vault, Pear Runtime desktop app

Features (What You Get)

  • Secure storage for passwords, identities, credit cards, notes, and custom fields
  • Cross‑device and cross‑platform synchronization
  • Offline access (local‑first usage)
  • Encryption for vault security
  • Password strength analysis
  • Random password generator
  • Simple, clean UI

High‑Level Architecture

UI (React)

Vault / state management

Local encrypted storage

Peer‑to‑peer distribution (Pear Runtime)

This means your “source of truth” is your devices, not a centralized web account.

Getting Started (Installation & Dev Setup)

0) Requirements

  • Node.js (match the version in .nvmrc)
  • npm
  • Pear Runtime installed

Check Node version:

node --version

1) Clone the Repo

git clone https://github.com/tetherto/pearpass-app-desktop.git
cd pearpass-app-desktop

2) Update Submodules

PearPass uses submodules. Update them with the provided script:

npm run update-submodules

If you need a specific remote:

npm run update-submodules -- [remote-name]

3) Install Dependencies

npm install

4) Generate i18n (Translations)

PearPass uses Lingui. Generate and compile message catalogs:

npm run lingui:extract
npm run lingui:compile

5) Run the Desktop App (Dev Mode)

pear run --dev .

If everything is set correctly, the app should launch.

Testing

PearPass uses Jest for unit testing.

npm test

Usage: What to Try First

Once the app runs, a good “first session” checklist:

  • Create a vault and set a strong master password
  • Add sample entries: login, note, identity
  • Try the password generator + strength checks
  • Explore sync / distribution options (if you have multiple devices)

Tech Stack

  • Pear Runtime
  • React
  • Styled Components
  • Redux
  • Lingui (i18n)
  • Jest (tests)

This is a great repo to learn how a security‑focused desktop app structures:

  • state
  • encryption boundaries
  • UX flows for sensitive data

Who Should Fork This?

This repo is perfect if you want to build:

  • a local‑first password manager fork
  • a secure “vault” module for another app
  • P2P sync experiments
  • privacy‑first productivity tools

Ideas:

  • add hardware key / OS keychain integrations
  • add vault export formats
  • add threat‑model docs + security tooling
  • build a plugin system for record types

PearPass also has:

  • browser extension
  • mobile app
  • vault core libraries

If you want full‑stack parity (desktop + browser autofill), look at the extension repo too.

Final Notes

PearPass Desktop is one of those repos that’s both:

  • immediately useful
  • very teachable for local‑first security apps

If you’re exploring modern, open‑source security software — this is absolutely worth starring and reading.

Back to Blog

Related posts

Read more »