Rules:
- https://en.wikipedia.org/wiki/Ten-pin_bowling
- https://www.youtube.com/watch?v=aBe71sD8o8c
Start the server and call the REST JSON API or try the rough SPA demo at http://localhost:3000/demo
Read the API documentation for endpoints details.
bundle
to install dependenciesrspec
to run tests
- implement game logic using TDD (test first)
- persist it's state to handle stateless requests
- add integration tests
- add REST Endpoints for
Game
oncreate
,show
,update
- investigate 2 strikes on last grame
- handle required
params
- update status code to be more expressive
- replace
.to_i
in controller because"s".to_i == 0
in ruby. (Nowupdate_params
checks for non digits) - pessimistic locking on DB row while updating so API is thread safe / multiprocess safe
- move GamesController#index and cleanup view
- add API docs
- add license
- add CI (with Travis)
- deploy to Heroku
- disable assets and compilation
- expose the score by frame trough the API
- add
/api
route namespacing and ensure defaultjson content-type
- add app semantic versioning including api versioning (e.g.
/api/v1
) - cache
GamesController#show
. Added casched methodGame.cached_find_by_id
to cache accessed game records - add in memory caching and separate cache location by environment