/bowling_score_tracker

Ruby & JS 10-Pin Bowling Scoring App with TDD

Primary LanguageRuby

#Bowling Score Tracker

Code Climate

Table of Contents

##Screenshot

##General Description

This app implements a 10-pin bowling score tracker for up to 4 players.

For those who aren't familiar with the game, a comprehensive description of the rules and scoring can be found at: Wikipedia on 10-Pin Bowling

##How to Install and Run

To install the app, clone the repo to a local folder and then run the following commands in terminal:

$> cd bowling_score_tracker
$> bundle install

Then you'll need to create an enviromental variable in your machine for Sinatra's session secret key.

The name of this env variable should be: BOWLING_SECRET, and you can give it any value you like.

If you want a random string for this variable's value, you can use the following commands in terminal to generate it:

$> irb
#> SecureRandom.hex(64)
$> exit

Once the env variable for the session secret is set, you can run the local server:

$> thin start

Then open the browser of your choice and go to this address:

http://localhost:3000/

##See it Live on Heroku

A live version of the game can be found at:

Bowling Score Tracker on Heroku

As I'm using Heroku's free hosting service, the app may take a bit of time to upload
(Heroku's giros take time to wake up...), so please be patient.

##Browsers

This app has been tested with and supports the following browsers (though it should hopefully look decent in other browsers as well):

  • Google Chrome (39.0)
  • Apple Safari (7.1.2)
  • Mozilla Firefox (33.1)

##Testing

Unit and feature tests for the back-end logic and front-end interface were written with Rspec (3.1.7)
& Capybara (2.4.1).

To run the tests, clone the repo to a local folder and then run:

$> cd bowling_score_tracker
$> bundle install
$> rspec

##License

Released under the MIT license.