Skip to content

v3xlabs/open-lavatory

Repository files navigation

Open Lavatory

Secure peer-to-peer connectivity between dApps and wallets

Documentation: openlv.sh Status: In Development Tests: Passing
Translations: 9 License: LGPL-3.0


Features

  • 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

Quickstart

pnpm install @openlv/connector wagmi
import { 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(),
  },
});

Overview

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.

Documentation

Head to the documentation to learn more about openlv.

Repository Structure

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 preact 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

Specification

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.

Contributing

We accept contributions via pull requests. Please ensure to push changesets for your changes. Also see issues to comment on RFCs.

Attribution

The initial proof of concept was built in 48 hours at the W3PN Hacks 2025 hackathon in Berlin by @v1rtl & @lucemans & @JustAnotherDevv.


🔒 Privacy-first • 🌐 Peer-to-peer • 🚀 Open by default

About

Secure peer-to-peer connectivity between dApps and wallets

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors