WARNING: There are no tests for this software, use is on your own risk.
An application to make the life of a LAN-partygoer easier!
Don't forget to run rake emoji
.
Install
# make sure ruby 2.2.3 is installed
bundle install
packer -S npm # install npm
npm install # in root directory of the repo
bundle exec rake db:setup # setup the database
bundle exec rake db:seed # seed the database
Run
(run these in parallel)
bundle exec rails s # the https server
redis-server # redis needs to be running for action-cable
# Console editing
bundle exex rails c # opens the rails console
# Queries & updates (in console)
var = User.find_by member:"value"
var.member = "other value"
var.save
# Creating new object (in console)
var = Game.new
var.save
# reset, setup and seed the database when it's already populated
bundle exec rake db:reset
Testing
# setup environment
bundle exec rails db:migrate RAILS_ENV=test
# execute
bundle exec rake
Programma structuur
Data flow
Het programmma is gebouwt rond redux. Elke client kan acties sturen (gedefinieerd in actions, gepubliceert door publishedAction) welke naar de server gestuurd worden, die ze reducet en terug stuurt naar alle subscribers (inclusief jezelf) waar ze dan gehandled worden.
Elke actie volgt de naming conventie: reducer#method
(bijv. event#create
). Op basis hiervan word er geroute naar de correcte methodes.