Skip to content

styrene-lab/styrene-rs

 
 

Repository files navigation

styrene-rs

Rust implementation of the RNS and LXMF protocol stack for the Styrene mesh communications project.

Forked from FreeTAKTeam/LXMF-rs. See UPSTREAM.md for fork attribution.

Status

Phase 1: Fork and Foundation. Python styrened remains the primary implementation. This Rust stack is experimental until it passes the interop gate (Phase 3).

Crates

Crate Description
styrene-rns RNS protocol core — identity, destinations, links, resources, ratchets. Transport layer (TCP, UDP) behind transport feature
styrene-lxmf LXMF messaging — router, propagation, stamps, delivery pipeline. SDK domain types behind sdk feature
styrene-mesh Styrene wire protocol envelope (matches Python styrene_wire.py)
styrened-rs Daemon binary — RPC server, message routing, identity management

Build

# Install just: brew install just / cargo install just
just validate    # format-check + lint + test
just test        # cargo test --workspace
just lint        # cargo clippy
just docs        # cargo doc --workspace

Repository Layout

styrene-rs/
├── crates/
│   ├── libs/          # Library crates (styrene-rns, styrene-lxmf, styrene-mesh)
│   └── apps/          # Binary crates (styrened-rs)
├── tests/
│   └── interop/       # Python<->Rust interop test fixtures
├── justfile           # Build automation
├── UPSTREAM.md        # Fork attribution
└── CLAUDE.md          # Claude Code guidance

Wire Protocol Contract

The wire protocol is the integration boundary between Python and Rust. Both implementations produce and consume identical byte sequences — no FFI, no shared memory. A Python styrened and a Rust styrened-rs coexist on the same Reticulum mesh without knowing about each other.

License

MIT — see LICENSE.

About

Rust implementation of the RNS/LXMF stack — interop-tested against the Python reference, targeting constrained hardware

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

No contributors

Languages

  • Rust 99.7%
  • Just 0.3%