GradeSheet has been designed to give teachers all the tools they need to record student grades. It is web based to make it easily accessible to everyone.
Students and parents can log into the system to check on their grades and even communicate with their teacher(s).
-
Repository: github.com/rnhurt/gradesheet
-
Live example: demo.KangarooBox.com
-
Bugs / feature suggestions: github.com/rnhurt/gradesheet/issues
-
Professional support: www.KangarooBox.com/kookaburra
-
Ruby 1.8 (working on moving to v1.9)
-
Rails 2.3.5
-
Dependencies (aka Rails plugins):
-
will_paginate - Most awesome pagination system for Ruby
-
Authlogic - A clean, simple, and unobtrusive ruby authentication solution.
-
validates_existence - Rails plugin that provides a validates_existence_of method for ActiveRecord models to check existence of records referenced by belongs_to associations.
-
validates_date_time - Rails plugin that provides an easy way to validate dates and times
-
livepipe_ui - A suite of high quality widgets and controls for web 2.0 applications built using the Prototype JavaScript Framework.
-
Prawn - PDF framework for report generation
-
Prawn-Layout - An extension to Prawn offering table support, grid layouts and other things.
-
Prawn-Format - An extension to the Prawn PDF generation library that allows you to use HTML-ish tags
This is a typical Ruby on Rails project and it is installed just like any other RoR project. Since most of the development/testing is done on Debian & Ubuntu, it will be simpler to get up and running if you are using one of those OSs. However, it should run on any system that runs Rails.
-
Get the source code (github.com/rnhurt/gradesheet/tree/master)
-
Add the dependencies noted in the Requirements section
-
Modify
database.yml
to point to your database -
Run
rake db:migrate
to create the database schema -
Run
rake fixtures:load
to load the test data -
Run
./script/server
to start the development web server -
Fire up your web browser and point it to localhost:3000
Gradesheet is documented using the standard, built-in RDoc system. To build the documentation with the just run the command:
rake doc:app
However, to build better looking documentation you might want to use this command:
rake doc:app_horo
which uses the Horo template and results in documentation that is much easier on the eyes.
Currently, Gradesheet tests are written using the standard, built-in test framework. However, RSpec looks very attractive and when I get a bit more time I might move them over to that. In the meantime, just use the standard Rails testing commands to run the test (rails test:units
, etc.)
I’ve just been turned on to Webrat and am very impressed with it and all of the integration tests (or the majority of them) will be soon converted to it. So, if you want to run the full test suite, you’ll have to install the Webrat gem.
Performance testing is being implemented with the excellent JMeter package. This project uses Authlogic for user authentication and I have had no end of trouble trying to get some performance numbers out of the system. However, a little time spent with JMeter has gotten me a least a little way toward being able to measure the speed of the system. This is becoming ever more important as the design solidifies and the optimization begins.
If your interested in using Gradesheet in your school but don’t want to install and maintain it yourself, consider using a KangarooBox server appliance running Kookaburra (the commercial version of Gradesheet).
- Author
-
Richard Hurt
- Copyright
-
Copyright © 2008-2010 KangarooBox, LLC
- License
-
GPL-2. See LICENSE file in this directory.