This uses libuv to write strings to a UNIX domain socket and read responses back as strings.
libraryDependencies += "com.fiatjaf" %%% "sn-unixsocket" % "0.1.0"
import unixsocket.UnixSocket
UnixSocket
.call(socketPath, payload)
.future
.onComplete {
case Success(str) => println(s"got response from socket: $str")
case Failure(exc) => println("oh no!")
}