PEERD

Modular infrastructure for creating decentralized web applications on the

open web, running in-browser using Bitcoin and WebRTC.

Build distributed, censorship-resistant applications, using familiar and ubiquitous web technologies.

PEERD is a set of JavaScript libraries that can be used to create and deploy decentralized web applications, or dwapps, in an accessible, efficient, scalable, and trust-minimizing fashion.

PEERD envisions a world where anyone with a web development background can create novel decentralized applications and deploy them on the open web. This is accomplished by providing a set of developer libraries, written in Vanilla JavaScript for the browser, which enable a base foundation for dwapp creation.

PEERD is effective, efficient, free, non-commercial, and open source. Development of the primary libraries is ongoing. Stay tuned for future updates.

What is PEERD?

PEERD is a collection of developer libraries designed to make creating decentralized web applications, or dwapps, approachable for developers with previous web development experience.

PEERD excels in the web browser, but can also function to make legacy desktop applications when coupled with frameworks such as Electron or NW.js.

PEERD is written completely in JavaScript, the programming language of the web, and uses WebRTC for peer-to-peer transport. No browser plug-ins, extensions, or installations are required to use PEERD. Just create your application, include the libraries, and provide the final code to your users. An optional web extension offers users advanced features and functionality.

What is a dwapp?

A dwapp, short for decentralized web application, is a decentralized application built using web-based technologies. This is a distinct term from dapp, short for decentralized application, in that a dapp does not necessarily function in a web-based context, whereas a dwapp always functions in a web-based context. This focus is a key differentiation between PEERD and other projects targeted at decentralized applications.

The Five Primary PEERD Libraries

peerd-networking logopeerd-storage logopeerd-consensus logopeerd-hashagg logopeerd-identity logo

peerd-networking

This library functions as layer one of the PEERD stack, and provides the WebRTC networking components, peer management, message handling, Bitcoin integration, and other, low-level functions.

peerd-storage

This library, along with peerd-consensus, functions as layer two of the PEERD stack, and provides distributed hash table (DHT) and file management functions.

peerd-consensus

This library, along with peerd-storage, functions as layer two of the PEERD stack, and provides consensus related functions, the primary of which are: (1) an on-chain, Bitcoin based signaling and staking protocol, and (2) coordination of a virtual blockchain, or virtualchain, that anchors to the Bitcoin blockchain.

peerd-hashagg

This library, along with peerd-identity, functions as layer three of the PEERD stack, and provides general purpose hash aggregation as a decentralized service, built on top of lower-level PEERD functions, with the most notable being a peerd-consensus group which runs the library specific network and virtualchain.

peerd-identity

This library, along with peerd-hashagg, functions as layer three of the PEERD stack, and provides a decentralized service for self-identity related features, built on top of lower-level PEERD functions, with the most notable being a peerd-consensus group which runs the library specific network and virtualchain.

A Visual Representation of the PEERD Network Topology

Example PEERD Network Graph Image

This illustration showcases each of the five primary PEERD libraries, represented by their designated colors, in operation as a partially connected, unstructured network. This is a type of peer-to-peer network topology, where each node is connected to one or more peer nodes. Some nodes selectively run only a subset of the five primary libraries, while others run the full stack.