Skip to content

Latest commit

 

History

62 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anymone

Warning

This repository is under active development, and it has not been audited. Do not use it for any production use case. Do use it to experiment with the protocol 💖

Anonymous broadcast channels for applications, with a Rust runtime, node binaries and UniFFI bindings.

Build and test

Requires Rust and a native C/C++ toolchain.

cargo build --locked --workspace --jobs 8
cargo test --locked --workspace --jobs 8 -- --test-threads=1

Local demo

cargo run --locked -p anymone-observer -- demo

Open http://localhost:7000 for the dashboard.

To connect a separate chat client, start the demo with a fresh output directory:

cargo run --locked -p anymone-observer -- demo --output target/demo --clients 0

Wait for Demo ready, then run in another terminal on the same host:

cargo run --locked -p anymone-chat -- --config target/demo/client.toml --port 8080

Open http://localhost:8080.

Deployment

Start from anymone.toml.example. Generate one identity per node with anymone-node keygen --out node.identity; keep its .exchange file alongside it. Fill in addresses, bootstrap peers and the shared governance committee, then run anymone-node run --config node.toml --role committee or --role relay.

Set [committee].protocol to panetiere (default), scheduled-panetiere, adcnet, scheduled-adcnet, or noop (unencrypted). Protocol selection is explicit. Optional core features: tdx-attest, mobile-attest, wire-debug.

The application API is in anymone-core: open(tag) creates a client pipe, bind(tag) receives service requests, and subscribe(tag) joins a broadcast channel. See each binary's --help for options.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages