Compile the daemon and CLI
Build just the pieces a normal node needs. You do not need the whole workspace for a first run.
git clone https://github.com/fordz0/lattice cd lattice cargo build --release -p lattice-daemon -p lattice
Lattice is a peer-to-peer protocol for publishing and browsing websites without servers, registrars, or anyone else's permission. Your name. Your site. Your network.
Lattice uses a Kademlia DHT to store name records and site content across a network of peers. Ed25519 signatures ensure only you can publish to your name. Every node verifies everything.
Names are claimed on the DHT with your Ed25519 public key. First-come, first-served. No registrar. No fees. Heartbeats keep names alive.
Files are content-addressed and distributed as hashed blocks. The manifest is signed, so peers reject tampered or forged content.
The browser extension routes .loom requests to your local daemon. Your node fetches, verifies, and serves content from the network.
As peers fetch content they replicate it. The more nodes online, the stronger and more resilient every published site becomes.
The landing page tells the story. The docs cover the protocol model, identity rules, Fray, CLI usage, and local development workflow.
Install the daemon, wire the browser extension, publish a first site, and verify the network path end to end.
How the daemon, DHT, extension, manifests, and content-addressed storage fit together.
Name ownership, signed records, trust boundaries, and the moderation primitives used by apps like Fray.
The distributed forum built on Lattice, including handles, trust records, sync flow, and moderation model.
Daily commands, daemon RPC concepts, and the paths you actually touch when running a node.
Current safeguards, sharp edges, and the practical threat model for publishing and local app administration.
Names and sites are tied to Ed25519 keypairs. No authority can revoke your name or take down your site. Ownership is proven by signature, not by a registrar's database.
Browse .loom sites natively in Firefox via the Lattice extension. No special browser. No Tor. Install the extension and it just works.
Every file is hashed. Every manifest is signed. Your node verifies everything before serving it, so corrupted or forged content is rejected at the protocol level.
AutoNAT detects your network topology. Circuit relay and hole punching connect nodes behind home routers automatically without port forwarding.
Install the daemon, install the extension, done. Bootstrap peers connect you to the network on first run. Publishing a site is a single command.
GPL v3. The same network that hosts static sites can also host apps, forums, and other signed overlays built on the same core protocol.
Build just the pieces a normal node needs. You do not need the whole workspace for a first run.
git clone https://github.com/fordz0/lattice cd lattice cargo build --release -p lattice-daemon -p lattice
lattice up starts or enables the daemon, waits for RPC readiness, and leaves you with one obvious way to get back online later.
./target/release/lattice up ./target/release/lattice status
The extension keeps .loom in the address bar and routes requests through your local node instead of a gateway.
Install from AMO: https://addons.mozilla.org/en-US/firefox/addon/lattice/
Publishing will claim the name if it is still free. Later, app updates are one command away.
./target/release/lattice publish --dir ./my-site --name mysite ./target/release/lattice update --all
The network is still young. Each peer that joins makes the system stronger, improves replication, and increases the odds that published content remains reachable.