No packages found.
course management and auto-grading of assignments
Course management service that enables auto-graded programming assignments.
Nothing special found.
Autolab is a course management service, initially developed by a team of students at Carnegie Mellon University, that enables instructors to offer autograded programming assignments to their students over the Web. The two key ideas in Autolab are autograding, that is, programs evaluating other programs, and scoreboards.
Autolab also provides other services that instructors expect in a course management system, including gradebooks, rosters, handins/handouts, lab writeups, code annotation, manual grading, late penalties, grace days, cheat checking, meetings, partners, and bulk emails.
Since 2010, Autolab has had a transformative impact on education at CMU. Each semester, it is used by about 5,000 CMU students in courses in Pittsburgh, Silicon Valley, Qatar, and Rwanda. In Fall, 2014, we are releasing Autolab as an open-source system, where it will be available to schools all over the world, and hopefully have the same impact it's had at CMU.
Subscribe to our mailing list to receive announcements about major releases and updates to the Autolab Project.
We released new documentation! Check it out here.
Add a test database in
Create and migrate the database.
RAILS_ENV=test bundle exec rails db:create
RAILS_ENV=test bundle exec rails db:schema:load
RAILS_ENV=test bundle exec rake autolab:populate
Do not forget to use
RAILS_ENV=test bundle exec in front of every rake/rails command.
Create necessary directories.
mkdir attachments/ tmp/
After setting up the test environment, simply run spec by:
bundle exec rails spec
Autolab is now running on Rails 6. The Rails 5 branch can be found on
We will not be backporting any new features from
master-rails-5, and we have discontinued Rails 5 support.
To install mkdocs, run
pip install --user mkdocs
We rely on the
mkdocs-material theme, which can be installed with
pip install --user mkdocs-material
To run and preview this locally, run:
Once your updated documentation is in
master, Jenkins will automatically run a job to update the docs. You can trigger a manual update with
This will build the site using the branch you are currently in (hopefully
master), place the built HTML files into the
gh-pages branch, and push them to GitHub. GitHub will then automatically deploy the new content in
Autolab is released under the Apache License 2.0.
Please feel free to use Autolab at your school/organization. If you run into any problems, you can reach the core developers at
[email protected] and we would be happy to help. On a case-by-case basis, we also provide servers for free. (Especially if you are an NGO or small high-school classroom)
For older releases, please check out the releases page.