docs.rs failed to build lyanne-0.3.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
lyanne-0.6.2
lyanne
Efficient, tick-oriented communication framework for server-client architectures.
- ✅ Flexible Runtimes: Choose between
rt_async_executor,rt_async_std,rt_bevy,rt_smolorrt_tokioruntime environments for seamless integration with your ecosystem. - ✅ Custom Serialization: Use the
sd_bincodefeature for efficient packet serialization and deserialization. - ❗ Cryptography: Secure your communication with the
auth_tlsfeature using rustls for TLS encryption, or opt forauth_tcpwith a reverse proxy like NGINX for encrypted TCP communication. WARNING: Further testing is required to validate the security of authenticators. - ✅ Tick-Based Synchronization: Optimized for round-trip (tick) oriented communication, ensuring precise timing and synchronization.
- ✅ Guaranteed Message Ordering: Maintain strict message order with built-in sequencing mechanisms.
- ✅ Zero Packet Loss: Ensure reliable data transmission with lossless packet delivery.
- ✅ Low Latency: Achieve minimal message latency using UDP communication.
- ✅ IP Agnostic: Support for scenarios where IP addresses can be ignored.
- ✅ Granular Authentication: Tailor client authentication with fine-grained control over connection acceptance based on specific criteria.
- ✅ Throttled Communication: Limit and control the flow of communication to meet your application's needs.
- ✅ Async Performance: Handle intensive tasks efficiently with asynchronous processing.
- ✅ Synchronous Control: Manage operations, such as packet sending and tick handling, without relying on asynchronous code.
- ❌ No Automatic ECS Replication: Entity Component System (ECS) replication is not automated.
- ❌ No WASM Support: WebAssembly (WASM) not yet available.
Examples
Adding lyanne dependency in server:
[]
= { = "0.3", = [
"rt_smol", # We need one runtime.
"sd_bincode", # Serde + Bincode will help our packet serialization/deserialization.
"server", # Server exclusive feature.
] }
# Our runtime.
= "^2.0.0"
# Our serializer.
= { = "^1.0.0", = ["derive"] }
= "^1.0.0"
Adding lyanne dependency in client:
[]
= { = "0.3", = [
# ...
"client", # Same as the server, but using "client" instead of "server".
] }
Creating packets with sd_bincode:
use Packet;
use ;
Sending packet to clients:
use ;
use crateMessagePacket;
Sending packet to server:
use ;
use crateMessagePacket;
See more complete examples in examples folder, and in crate documentation.