- :warning: This code is new and should not yet be considered secure for production use! [![Project](https://img.shields.io/badge/project-holochain-blue)](http://holochain.org/) [![Forum](https://img.shields.io/badge/chat-forum%2eholochain%2enet-blue)](https://forum.holochain.org) [![Chat](https://img.shields.io/badge/chat-chat%2eholochain%2enet-blue)](https://chat.holochain.org) [![License: MIT](https://img.shields.io/badge/License-MIT-blue)](https://opensource.org/licenses/MIT) [![License: Apache-2.0](https://img.shields.io/badge/License-Apache%202.0-blue)](https://www.apache.org/licenses/LICENSE-2.0) ### Tx5 - [ tx5 ](https://github.com/holochain/tx5/tree/main/crates/tx5-core) - [ ![crates.io](https://img.shields.io/crates/v/tx5) ](https://crates.io/crates/tx5) - The main holochain tx5 webrtc networking crate integrating the other code in this monorepo. ### Tx5 Support Crates - [ tx5-core ](https://github.com/holochain/tx5/tree/main/crates/tx5-core) - [ ![crates.io](https://img.shields.io/crates/v/tx5-core) ](https://crates.io/crates/tx5-core) - Core types used in other tx5 crates. - [ tx5-online ](https://github.com/holochain/tx5/tree/main/crates/tx5-online) - [ ![crates.io](https://img.shields.io/crates/v/tx5-online) ](https://crates.io/crates/tx5-online) - Network online connectivity status events. - [ tx5-go-pion-turn ](https://github.com/holochain/tx5/tree/main/crates/tx5-go-pion-turn) - [ ![crates.io](https://img.shields.io/crates/v/tx5-go-pion-turn) ](https://crates.io/crates/tx5-go-pion-turn) - Rust process wrapper around tx5-go-pion-turn executable. - [ tx5-go-pion-sys ](https://github.com/holochain/tx5/tree/main/crates/tx5-go-pion-sys) - [ ![crates.io](https://img.shields.io/crates/v/tx5-go-pion-sys) ](https://crates.io/crates/tx5-go-pion-sys) - Low level rust bindings to the go pion webrtc library. - [ tx5-go-pion ](https://github.com/holochain/tx5/tree/main/crates/tx5-go-pion) - [ ![crates.io](https://img.shields.io/crates/v/tx5-go-pion) ](https://crates.io/crates/tx5-go-pion) - Higher level rust bindings to the go pion webrtc library. - [ tx5-signal ](https://github.com/holochain/tx5/tree/main/crates/tx5-signal) - [ ![crates.io](https://img.shields.io/crates/v/tx5-signal) ](https://crates.io/crates/tx5-signal) - Holochain webrtc signal client. - [ tx5-signal-srv ](https://github.com/holochain/tx5/tree/main/crates/tx5-signal-srv) - [ ![crates.io](https://img.shields.io/crates/v/tx5-signal-srv) ](https://crates.io/crates/tx5-signal-srv) - Holochain webrtc signal server. - [ tx5-demo ](https://github.com/holochain/tx5/tree/main/crates/tx5-demo) - [ ![crates.io](https://img.shields.io/crates/v/tx5-demo) ](https://crates.io/crates/tx5-demo) - Demo showing off tx5 p2p connectivity. #### tx5 Tx5 - The main holochain tx5 webrtc networking crate. #### WebRTC Backend Features Tx5 can be backed currently by 1 of 2 backend webrtc libraries. - `*`DEFAULT`*` `backend-go-pion` - The pion webrtc library writen in go (golang). - [https://github.com/pion/webrtc](https://github.com/pion/webrtc) - `backend-webrtc-rs` - The rust webrtc library. - [https://github.com/webrtc-rs/webrtc](https://github.com/webrtc-rs/webrtc) The go pion library is currently the default as it is more mature and well tested, but comes with some overhead of calling into a different memory/runtime. When the rust library is stable enough for holochain's needs, we will switch the default. To switch now, or if you want to make sure the backend doesn't change out from under you, set no-default-features and explicitly enable the backend of your choice.