johanandren / akka-streams-tcp-chat

Small sample using Akka Streams to build a low level chat server and client

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Small TCP Chat Server and Client built with Akka Streams.

Inspired by the FS2 sample by Michael Pilquist: https://github.com/functional-streams-for-scala/fs2-chat but probably not exactly 1:1 with the functionality of that.

Not the greatest sample of backpressured async streams, but still quite fun little app covering quite a bit of Akka Stream APIs (and a little Scodec which made encoding/decoding the protocol a breeze)

Requires a JVM 8+ and sbt installed to build and run.

Running the server: sbt "runMain akkastreamchat.Server 127.0.0.1 2842"

Running the client connecting to the server:

sbt "runMain akkastreamchat.Client 127.0.0.1 2842 tiger"

sbt "runMain akkastreamchat.Client 127.0.0.1 2842 scott"

Client commands:

text send to all connected users

/users lists logged in users

/quit disconnect and terminate client

About

Small sample using Akka Streams to build a low level chat server and client

License:Other


Languages

Language:Scala 100.0%