
Show HN: Rust chat client (with GUI) and server on Mac and FreeBSD using WebSockets - zkirill
I&#x27;m learning Rust and put this together from sample code over a few days. Rust is incredibly fun (I normally work with Go and Swift). My goal is to see if I can put the client on a development board running xBSD and use a touchscreen for input.<p>Client
https:&#x2F;&#x2F;github.com&#x2F;zkirill&#x2F;thor<p>Server
https:&#x2F;&#x2F;github.com&#x2F;zkirill&#x2F;odin<p>You need Rust 1.7.0 and Cargo 0.9.0 to compile. The package for FreeBSD doesn&#x27;t currently go that high so you need to use a port (instructions at https:&#x2F;&#x2F;gist.github.com&#x2F;zkirill&#x2F;4fb42b4ba4b7cc58c4f0)<p>Packages of interest:<p>* IO (epoll, kqueue) used by the server to handle many WebSocket connections on the same thread. See bottom of the MIO README for performance comparisons to other implementations: https:&#x2F;&#x2F;github.com&#x2F;carllerche&#x2F;mio<p>* WebSocket server dependent MIO: https:&#x2F;&#x2F;github.com&#x2F;housleyjk&#x2F;ws-rs<p>* WebSocket client: https:&#x2F;&#x2F;github.com&#x2F;cyderize&#x2F;rust-websocket<p>* GUI (connects to X or Wayland): https:&#x2F;&#x2F;github.com&#x2F;PistonDevelopers&#x2F;conrod
======
seren
What what your experience with conrod ? Piston seems to go in lots of
different direction, I wonder if it is a mature library.

~~~
zkirill
It was a humbling experience coming from Cocoa Touch to say the least. I think
it's still early but Piston seems to be working very hard on it (in addition
to various other graphics backend for Rust). From what I can tell a lot of the
foundational stuff still needs to be built, particularly around layout. The
situation with font rendering is also unclear to me because they might be
moving away from Freetype
([https://github.com/PistonDevelopers/conrod/issues/695](https://github.com/PistonDevelopers/conrod/issues/695)).

Qt is an "alternative" to Conrod but it seems that there is a complexity issue
with Rust trying to bind to what Qt has created on top of C++.

I consider myself very spoiled by UIKit but I didn't find any alternatives to
Conrod so it's the project I will be contributing to and developing with. Feel
free to message me if you want a more in-depth breakdown.

