Build passing URL: https://travis-ci.org/satyapramodh/trivia?branch=master
-
Ruby version
Ruby 2.4.2
Rails 5.1.5 -
Setup
bundle install
cd client
npm install
-
Database creation
From root folder,
rake db:setup
-
Database initialization
rake db:seed
-
How to run the test suite
From root folder,
bundle exec rspec spec/
-
Deployment instructions
Deploy to heroku. Procfiles are already set.
foreman start -f Procfile.dev
bundle install
- Setup pg, add database.yml with configs with help of database.yml.sample
- Run
rake db:setup
- Run
rake db:seed
- Run
bundle exec rspec spec/
for running unit, integration tests. (Currently at 99% coverage for backend) - Frontend is React. Files can be found under client/ folder.
npm install
within client folder to setup.- For deployments,
Procfiles
for different enviornments are setup. (Heroku)
- Question can be of radio/choice based or text based.
- In a choice based question, choosing an answer from multiple options is allowed.
- In a text based question, the answer must be typed.
- Rounds are available for trivia.
- Scoreboard can be generated by aggregating User's wins and loss.
- Test Driven Development with 99% coverage.
- User Faker, Rspec, FactoryBot, DatabaseCleaner to handle tests.
- Backend done.
- APIs are available at
process.env.API_URL OR "http://localhost:3001"
. - Currently React, Redux, Redux saga, bootstrap-sass are setup.
- Watchers for scss precompiling setup.
- Redux, Redux saga setup for User Registration.
- Deployment configuration to Heroku.
- Redux, Redux saga setup for Registration, Login, Questions List, Question and Answer components.
- API integration with frontend.
- Frontend React components for Question create form and scoreboard,
- Updated ui for questions to show one question at a time with next and previous buttons instead of current boilerplate design.
- Redux, Redux saga setup for Answer, Rounds and Scoreboard.
- Timed (10sec) question/answering.
- Setup Sidekiq for background working of scores.
- Setup cron jobs via Sidekiq to generate weekly, monthly scoreboards.
- Tests for frontend using Mocha, Chai.
- Vote up/down of questions and better sort questions.