Secure peer-to-peer connectivity between dApps and wallets
- Privacy-first, end-to-end encrypted, no metrics, no tracking
- No central dependency, rather a variety of signaling layers
- Peer-to-peer transport via WebRTC (or other transport layers)
- Reuse of existing infrastructure and p2p standards
- User control over connection & configuration
pnpm install @openlv/connector wagmiimport { openlv } from "@openlv/connector"; // Import the connector
import { createConfig, http } from "wagmi";
import { mainnet } from "wagmi/chains";
export const wagmiConfig = createConfig({
chains: [mainnet],
connectors: [openlv()], // Add it to your connectors array
transports: {
[mainnet.id]: http(),
},
});A secure privacy-first protocol for establishing peer-to-peer JSON-RPC connectivity between decentralized applications (dApps) and cryptocurrency wallets.
Open Lavatory Protocol eliminates centralized relay servers by enabling direct peer-to-peer connections between decentralized applications (dApps) and cryptocurrency wallets. Using public signaling servers for initial handshake and WebRTC combined with asymmetric encryption, it prioritizes privacy and self-sovereignty.
Head to the documentation to learn more about openlv.
This repository includes the following packages:
| Package | Description |
|---|---|
| @openlv/session |
a session represents a connection between dApp and wallet |
| @openlv/signaling |
Implementation of various signaling layers |
| @openlv/transport |
Implementation of various transport layers |
| @openlv/provider |
EIP-1193 compatible provider |
| @openlv/core |
shared types and utilities |
| @openlv/modal |
solid-js modal for dApp connection management |
| @openlv/connector |
Wagmi connector for dApp integration |
| @openlv/react-native |
react-native compatibility |
| [WIP] extension | Browser extension for improved dApp support |
| Examples | Description |
|---|---|
| sandbox | Interactive testing environment with debug features |
| wallet | Sample wallet implementation for testing |
| dapp | Wagmi-based dApp sandbox for end-to-end testing |
| react-native | React Native wallet implementation for end-to-end testing |
| Safe{Wallet} Web Implementation | Safe{Wallet} Web App open-lavatory implementation |
| Safe{Wallet} Mobile Implementation | Safe{Wallet} Mobile App open-lavatory implementation |
| docs | Documentation includes a running wagmi demo |
Important
This specification was written during a hackathon, it has its flaws, and should be treated as a proof of concept.
You can find the specification set in docs/specs, starting with 001_initial.md.
We accept contributions via pull requests. Please ensure to push changesets for your changes. Also see issues to comment on RFCs.
pnpm install
pnpm build
cd docs && pnpm devThis will get you a build of all required packages, and load up a local development environment of the documentation site. The documentation site will be available at localhost:5173, and contains a working example of the Modal via the TryItOut component.
The initial proof of concept was built in 48 hours at the W3PN Hacks 2025 hackathon in Berlin by @v1rtl & @lucemans & @JustAnotherDevv.