Maybe one of these links helps:
Rust
Welcome to the Rust community! This is a place to discuss about the Rust programming language.
Wormhole
Credits
- The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)
Im saving this comment for sure
From my experience, Rust programmers use the terminology of "design patterns" much less frequently, comparing to how it's used in the Java world. I have only a year or two of Java experience, having quickly moved to Scala for more many years after that, but I think I vaguely remember the vibe around it in Java and it just doesn't exist.
In terms of "building blocks" in the Rust world, I'd say there are the "synchronization primitives" like RwLock's, Arc's and such, there is the big and sometimes difficult async, there is message passing concurrency via e.g. std::sync::mpsc. I haven't heard much about actor systems, they're much less used than e.g. Akka of the Scala(/Java?) world I think. To experiment and design a solution, you probably want to read about these "building blocks" and what they're meant for. For this particular case I don't have a quick advice unfortunately. Maybe look from existing XMPP libs and go from what they have.
On a personal/user level, I'd love to see an XMPP client in Rust!
Thanks, yea from what I gather the term is "idiomatic Rust" but its the same thing really.
As far as the client goes,I've made some slow but decent progress. I've got it connecting using STARTTLS and authenticating, and have been able to send a message to a user. I've got the user interface going as well using Egui and Bevy, its not "connected" to the back end yet, but its been super easy to get going.