991 B


Rudimentary go chat server as a fun project.


git clone

go get
go get

Note: I also copied some code directly from


Start the server

go run -race chatserver*.go -conf ./config.yml

See sample config file at config.sample.yml.

Connect clients

You can connect multiple clients.

telnet localhost 4080

You can also use HTTP. The API docs and examples can be seen at http://localhost:4080

curl http://localhost:4080


  • Awesome telnet server (would
  • HTTP API (no UI for the sake of time)
  • Multiplex the same port (because I wanted to learn)
  • E-mail "magic link" authentication (minus the link since it's localhost)

Not Implemented

  • Write to log file (just go run ./chatserver.go > /path/to/log
  • Rooms