Ivan FB 1123c7fa70
chore: vendor logos-delivery bindings and wire the workspace
libchat's hand-written FFI to liblogosdelivery is replaced by the upstream
`waku-bindings` crate. It is unpublished and its build script compiles the
native library from Nim sources in its own submodule, so it is consumed from
a checkout under vendor/ as its README prescribes, pinned as a submodule.

The macOS link frameworks and the chronicles log-level define ride in this
crate's .cargo/config.toml: a path dependency's config is not inherited, and
the native node's logging is compile-time only (its runtime logLevel is a
no-op), so without the define the library floods stdout and no TUI on top is
readable. The vendor directory is excluded from the workspace so its Nim
build is not dragged into `--workspace` builds, fmt or clippy.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ai43sF2rymPFMG9iki9fwL
2026-07-18 17:29:51 +02:00
2026-06-26 10:05:28 -07:00
2026-01-30 15:46:36 +00:00

libchat

Supporting library for Logos-chat

Example app

bin/chat-cli is an end-to-end encrypted CLI chat app built on this library. By default it uses logos-delivery (Waku-based) as the transport so two users anywhere in the world can chat by sharing an intro bundle. A local file transport is also bundled in; pick at runtime with --transport <logos-delivery|file>.

# Build logos-delivery with Nix
nix build .#logos-delivery
# Build chat-cli with Cargo
LOGOS_DELIVERY_LIB_DIR=./result/lib cargo build --release -p chat-cli
# Run binary (defaults to --transport logos-delivery)
./target/release/chat-cli --name alice

See bin/chat-cli/README.md for full build, run, and test instructions.

Description
Supporting library for Logos-chat
Readme
Languages
Rust 99.5%
Nix 0.5%