Gradebook is a tool for managing assignments submitted via a GitHub repo, using tags to differentiate between assignments. This is a "scratch your own itch" project that I wrote after I got really fed up with trying to use Google Spreadsheets to input grades, but has the potential to be something actually quite useful. Contributions welcome!
- Automatic submission tracking via the Github API
- Progress graphs to show how many students are caught up
- Supports assignment resubmission using git tags/semantic versioning
- Secure private links for students to view their grades
- Secure administrator login via Google OAuth
- Nice admin UI (Bootstrap)
- Clone the repo
- Edit
config/initializers/admin_users.rb
to reflect the admins' google account info. - Set the
GOOGLE_CLIENT_ID
,GOOGLE_CLIENT_SECRET
,GITHUB_CLIENT_ID
, andGITHUB_CLIENT_SECRET
environment variables with your GitHub and Google API credentials (if you're deploying to heroku, you'll need to set those on the server as well). - Install dependencies with
bundle install
- Create the database with
rake db:create db:migrate
(you will need to have postgres installed) - Run this app with
rackup
orshotgun