localbolt.app - the live website.
Source code for the LocalBolt website. Encrypted peer-to-peer file transfer. Files go directly between devices, never stored on any server.
packages/
bolt-core-browser/ # Browser crypto primitives (@the9ines/bolt-core)
localbolt-browser/ # Browser transport, signaling, UI, state (@the9ines/localbolt-browser)
localbolt-core/ # Session orchestration, verification state (@the9ines/localbolt-core)
localbolt-web/ # Website frontend (Vanilla TypeScript, Tailwind, Vite)
localbolt-signal/ # Rust signaling compatibility wrapper
- NaCl/Curve25519 encryption - same crypto as Signal and WireGuard
- WebRTC P2P transfer - files never touch a server
- LAN discovery - discovers nearby devices on the same local network
- Auto-discovery - devices appear automatically, tap to connect
- No accounts - no sign-up, no cloud storage, no data collection
- No file size limits - limited only by device storage
- Cross-platform - any modern browser on any OS
- Open source - self-host your own instance
Web frontend:
npm install
npm run devSignal server:
cd packages/localbolt-signal
cargo run --releaseThe workspace builds in dependency order:
npm run build
# bolt-core-browser → localbolt-browser → localbolt-core → localbolt-web- Website: Deployed to Netlify (static build)
- Signal server: Canonical hosted endpoint on Fly.io
(
wss://bolt-rendezvous.fly.dev)
Two transfer paths:
- Browser → App (forward path): connects to the native app daemon via WebTransport (HTTPS origins) or WebSocket direct (localhost/HTTP origins). Encrypted, daemon-mediated, peer-to-peer.
- Browser ↔ Browser (compatibility path): WebRTC data channels for browser-only file sharing without a native app.
The website uses rendezvous signaling only to find nearby LocalBolt peers on the same local network. LocalBolt does not provide internet-wide discovery or cross-network transfer.
- Devices running the native app on the same LAN — forward path
- Other users on localbolt.app on the same LAN — browser↔browser
- Devices running the self-hosted version on the same LAN — local signaling
LocalBolt v3 is part of the Bolt Protocol ecosystem. See PRD.md and ROADMAP.md in this repo for product requirements and roadmap.
| Relationship | Repository |
|---|---|
| Ecosystem governance (mirror) | bolt-ecosystem |
| Protocol spec | bolt-protocol |
| SDK (Rust) | bolt-core-sdk |
| Hosted rendezvous | bolt-rendezvous (endpoint only) |
| Lite self-hosted | localbolt |
| Native/mobile shells | localbolt-app |
This repo does not own the production rendezvous server or daemon. It
connects to the hosted bolt-rendezvous endpoint. The local
packages/localbolt-signal crate remains a compatibility wrapper covered by CI.
This is an open-source project.
- localbolt.app — use it now
- LocalBolt (self-hosted) — download and run on your own network
- LocalBolt App — native/mobile shells over the shared Rust core
This project follows the Contributor Covenant.
MIT — built by the9ines