Skip to content

Releases: MarcPer/lanchat

New UI, automatic reconnects

28 Apr 09:15
Compare
Choose a tag to compare

Several improvements were done in this version:

PR 1:

  • new UI with tview. Now the input doesn't interfere with text from incoming messages, and generally the terminal UI is handled better all around (e.g. window resizing).
  • Host scanning now doesn't rely on the arp UNIX command, and is implemented instead purely in Go. Besides better portability, this makes the scan more reliable, as hosts can't be always foudn in the ARP cache.
  • Some unit tests were added, together with Github flow automated testing
  • Config files can be used to run lanchat, to avoid having to always type the command line flags. Note that the config file path needs to be specified through the --config (or -c) flag though, as lanchat doesn't assume any location for it. A reasonable approach is to define an alias such as:
    alias lanchat=<path-to-lanchat> --config <path-to-config>
    
    Of course using an alias, you could just as well add the flags you need there, without resorting to the config file, but changing the config file is easier than redefining the alias 🙂 .

PR 3:

  • All peers ping each other. If non-host peers notice the host is down, they try to become a host. See the pull request description for some caveats.

Notifications and refactoring

27 Jun 12:18
Compare
Choose a tag to compare

New features:

  • system notification (using the notify-send command), with a cooldown of 20s;
  • the :info command shows which users are currently connected to the server. This is triggered automatically for a client after it has just connected.
  • connection polling: the server polls its connections and removes ones that are already closed.
  • connected users are notified whenever someone disconnects or when a new user joins the server.

In this release, the server and client code were merged into a peer file, since they already had a lot in common.

First version

19 Jun 16:01
Compare
Choose a tag to compare

Lanchat basic functionality:

  • searches for server running on the local network and starts one if none is found;
  • allows connecting client to change its username;
  • colored prompt.

The binary was built for Linux.

How it looks
Screenshot from 2021-06-19 18-00-25