whatup

whatup is a simple server-based instant messaging application

Note: this is very much a work-in-progress, and will be until version 1.0.0

Check it out on rubygems.org.

Build Status Maintainability Test Coverage Gem Version

Installation

Assuming you have Ruby 2.4 or greater installed,

$ gem install whatup

If you don't have Ruby installed, see here for some brief instructions.

Usage

$ whatup

Commands:
  whatup -v, --version   # Output the version
  whatup client ...      # Perform client commands
  whatup help [COMMAND]  # Describe available commands or one specific command
  whatup server ...      # Perform server commands

Development

To run the program's command line interface

$ ruby -I./lib ./exe/whatup

To run the tests

$ bundle exec rspec

We have a git hook to automatically run the code linter before committing.

Set it up as follows

$ git config core.hooksPath '.git_hooks'

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/jethrodaniel/whatup.

License

Free as in beer - our license is MIT.

About

This was part of a school project - see the course site for details.

Citations

The following were instrumental in understanding the usage of threads for socket input: