A simple gossip protocol implemented using Ruby and Sinatra. The the network requests (Faraday) connect to peers to send messages and also receive peer message state.
bundle install
The client takes multiple arguments. The first argument is the port for the client to run on and the rest are peer ports for that node.
ruby client.rb 3000 4000 # one peer port
ruby client.rb 3000 4000 5000 6000 7000 # multiple peer ports