# libcess `libcess` is the Cesspool networking library used by the Dat (`ddat`) and Cabal-compatible (`cable`) applications. It owns the UDP transport, peer discovery/rendezvous protocol, bootstrap client/server behavior, and the persistent Ed25519 identity used by the Cesspool network. Dat and Cable are applications built on this base. Archive storage remains SLEEP; room/feed behavior remains in Cable. libcess does not depend on either application or their storage layers. ## Build Requires a C99 compiler, GNU make, and libsodium development files. ```sh make make install ``` Build artifacts stay under `libcess/build`. Set `PREFIX` or `DESTDIR` for a staged install. The standalone package reads `libcess/NETWORK_PROTOCOL`; the full dat-gpt build uses the project-root `NETWORK_PROTOCOL` file so Dat and Cable share the same Cesspool network identity. The bootstrap service is `cesspool-bootstrap`. It only provides discovery; it does not relay chat or archive payloads. Supply `--advertise HOST:PORT` for the address clients should use, and make that UDP port reachable through the host firewall and edge router. No external address lookup is performed. See [the public API](include/cesspool.h), [network API](include/cess_net.h), and [bootstrap man page](docs/cesspool-bootstrap.1).