Awesome Open Source
Awesome Open Source

PeerPad logo

PeerPad is a decentralized editor that allows concurrent writing of text. Besides making live changes to a given document, it allows read-only nodes to follow the changes in real-time. It also allows you to publish a self-contained snapshot of the document to IPFS.

Test it live at or

Docs: Security, Technology

PeerPad is experimental software. It hasn't been audited, and as such shouldn't be used to create or share sensitive information.

Table of Contents

Lead Maintainer

Jim Pick


With the following installed:

  • git
  • node >= 8
  • npm >= 6

Clone the repo and install the dependencies from npm.

git clone
cd peer-pad
npm install


For local development with hot code reloading

npm start

Then open http://localhost:3000 in your browser.


To build into the build dir, run:

npm run build


To run the unit tests:

npm test

To run the end-to-end smoke test that runs PeerPad in multiple, headless Chrome instances run:

npm run build
npm run test:e2e:ci

The e2e tests expect the site to already be running, so the test:e2e:ci will fire up an http-server before running the tests in test/e2e.

If you're running the dev server on the default port (via npm start) then you can run the e2e tests without starting a server with:

npm run test:e2e

By default the Chrome instances run headless, so you won't see the robots clicking around in the browser. To debug the tests and see what's going pass DEBUG=true as an env var.

DEBUG=true npm run test:e2e

To run the e2e test against a deployed version, just pass the url as an env var

URL= npm run test:e2e

To run the e2e load tests:

npm run test:e2e:load


You can self-host your own PeerPad. For that, run npm run build and deploy the build directory to a web-server

See docs/ more info on how PeerPad is deployed to

Some dependencies (like webcrypto) require that you're serving under HTTPS unless it's localhost...


The PeerPad is a work in progress. As such, there's a few things you can do right now to help out:

  • Check out the existing issues!
  • Perform code reviews. More eyes will help a) speed the project along b) ensure quality and c) reduce possible future bugs.
  • Add tests. There can never be enough tests.

Read the PeerPad for details on the latest development flow.

Want to hack on PeerPad?



Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Testing (93,355
Real Time (10,691
Collaboration (6,214
P2p (3,613
Headless Browsers (3,321
Ipfs (2,942
End To End Testing (2,407
E2e Tests (753
Crdt (419
Collaborative Editing (203
Capabilities (58
Peer Star (8