Add wiki home
commit
bd4932ac64
1 changed files with 16 additions and 0 deletions
16
Home.md
Normal file
16
Home.md
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
# Echo
|
||||||
|
|
||||||
|
A federated IRC services daemon in Rust. This wiki covers how Echo is built, how the federation works, how to run it, and how to extend it.
|
||||||
|
|
||||||
|
## Contents
|
||||||
|
|
||||||
|
- [Architecture](Architecture) — the engine, the event-sourced store, the module boundary
|
||||||
|
- [Federation](Federation) — gossip replication, the global/local scope model, conflict resolution
|
||||||
|
- [Services](Services) — the built-in service suite and their commands
|
||||||
|
- [Configuration](Configuration) — the `config.toml` reference
|
||||||
|
- [Directory API](Directory-API) — the gRPC account and channel directory for websites
|
||||||
|
- [Writing a Module](Writing-a-Module) — build a new service or ircd protocol link
|
||||||
|
|
||||||
|
## In one paragraph
|
||||||
|
|
||||||
|
Echo links to an ircd over its server-to-server protocol and runs the network's services as pseudo-clients. Every change to an account or channel is an event appended to a per-node log, and state is the fold of that log. Nodes exchange logs by gossip and converge, so several Echo instances share one account and channel database with no central server. The core is one crate; each service and each ircd protocol is a separate crate built against the `echo-api` SDK.
|
||||||
Loading…
Add table
Add a link
Reference in a new issue