8000 GitHub - agent-habilis/habilis-network · GitHub
[go: up one dir, main page]

Skip to content

Repository files navigation

habilis-network 📡

https://habilis.network

A portable, serverless gossip-network engine that runs on the web and on native. Peers find each other, form a mesh, and exchange signed messages and shared state, with no server in the middle. It is built on iroh for transport and automerge for shared state.

Features

  • Portable — runs on native, web, FFI, wasm and more.
  • Mixed mesh — UDP, relay server and WebRTC peers in the same mesh.
  • Serverless — no server to host, no account to create.
  • Encrypted — every link is QUIC over TLS, and every message is signed with an Ed25519 key and verified on receipt.
  • Shared state — a CRDT document every member converges on.
  • Self-healing — the mesh re-forms as peers come and go.
  • Byte streams — direct 1-1 streams between two peers.
  • Embeddable — joining a mesh is a function call, not a daemon.

Crates

Use it

Crate What it is
habilis-network The serverless gossip-network engine.
habilis-network-stream 1-1 byte streams between two peers, addressed by a hash: QUIC direct or over a WebRTC data channel, never through gossip.
habilis-network-stream-cli The habilis-network-stream binary: stdin to one reader, or a stream's bytes to stdout.
habilis-network-chunks Content-addressed chunks over data you already own.
habilis-network-netplay GGPO-style rollback netcode for peer-to-peer games on a mesh.

From other languages

Crate / package What it is
habilis-network-ffi A C-ABI shim over the engine, so a non-Rust process joins a mesh in-process.
habilis-network-wasm The mesh peer for the browser, behind a wasm-bindgen class.
habilis-network-api The TypeScript mesh API both backends implement.
habilis-network-ffi (npm) The engine on Bun, Deno and Node, over the C ABI.
habilis-network-wasm (npm) The engine in the browser, behind the habilis-network-api contract.
habilis-network-stream-web One end of a byte stream in a browser tab.

Releases

Contributors

Languages

0