A GitHub-based gradebook
Ruby HTML CoffeeScript CSS JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bin
config
db
lib
log
public
scripts
test
vendor/assets
.gitignore
.ruby-version
Gemfile
Gemfile.lock
Procfile
Rakefile
Readme.md
config.ru

Readme.md

Gradebook

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!

Features

  • 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)

Use

  1. Clone the repo
  2. Edit config/initializers/admin_users.rb to reflect the admins' google account info.
  3. Set the GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, GITHUB_CLIENT_ID, and GITHUB_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).
  4. Install dependencies with bundle install
  5. Create the database with rake db:create db:migrate (you will need to have postgres installed)
  6. Run this app with rackup or shotgun

Screenshots

screen shot 2014-09-23 at 1 28 18 pm

screen shot 2014-10-25 at 10 44 24 am

screen shot 2014-09-23 at 12 54 04 pm

screen shot 2014-09-24 at 8 58 33 am