Course management service that enables auto-graded programming assignments.
Switch branches/tags
Autolab2.0 MikeDrewitt-ub_blue account_for_DST_in_late_by_calculation api_show_submissions_from_all_clients api_v1_hotfix api_v1 assessment_form autofill_handin_dates cg2v-regrade_errors_fail create_announcement_bug create_assessment_configs_during_autopopulate devansh_v2.1.0_patches develop development drag_drop due_date_fix edit_assessment_form_updates error_audit_2018 extension_page_disable_browser_autocomplete feature_websockets fix_buttons fix_checkbox_2 fix_create_assessment_grading_deadline_initialization fix_datepicker_init fix_datepicker_initializing_bug fix_embedded_quiz fix_extensions_select_dropdown_search fix_extn_moss fix_issue_863 fix_logger fix_manage_submissions_table_checkbox fix_moss_get_child_status fix_pdf_annotation_borderbox_positioning fix_scoreboard_ui fix_setup_script_database_and_school_templates fix_statistics fix_travis_build fix_user_ids form_fixes_jacob form_fixes freeze_datepicker_version generic_handin_and_autograde_helpers grade_export_submission_time gradebook_changes gradesheet_sort_by_tweak hide_custom_submission hotfix_annotation_permissions hotfix_annotations hotfix_decouple_annotations_gradebook hotfix_flicker_menus hotfix_jobs hotfix_multiple_annotations hotfix_no_view_errors incorrect_favicon_link label-alignment-issues leave_admin_option_open manage_submission_buttons master mode_carnival moss_permissions multi_tango notifications_mvp pdf_annotation_buttons remove_developer_login_test remove_facebook remove_max_score_check remove_waves_classes revert_contact_page_github_issue_link scheduler_test_job school_specific_config score_overhaul setup_errors setup_scripts style_fixes switch_menu_side tango_client_retry tango_error_passthrough test_external_pr tjjohans_al2_anncmnt tjjohans_al2_rmdeluserbtn tjjohans_al2 tjjohans_annotations tjjohans_develop tjjohans_edits tjjohans_error_audit_2018 type_fix version_number_in_footer
Nothing to show
Clone or download
devanshk Moss permissions (#1015)
* hotfix_moss_permissions

* added note about missing courses
Latest commit 63623fc Dec 7, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
app Moss permissions (#1015) Dec 7, 2018
bin Autolab v2.1.0 (#946) Dec 19, 2017
config updated version number May 23, 2018
db Spring 2018 Mass Updates PR (#974) May 19, 2018
docker [config] Strengthen SSL configuration Apr 29, 2015
examples Add files via upload Aug 25, 2016
lib Spring 2018 Mass Updates PR (#974) May 19, 2018
public Autolab v2.1.0 (#946) Dec 19, 2017
script Autolab 2.0.1 Release (#782) Mar 2, 2017
spec Spring 2018 Mass Updates PR (#974) May 19, 2018
templates Ran rubocop --autocorrect Mar 13, 2015
.dockerignore Added dockerignore to ignore Git folder Apr 28, 2015
.gitignore Spring 2018 Mass Updates PR (#974) May 19, 2018
.rake_tasks~ Autolab 2.0.1 Release (#782) Mar 2, 2017
.rspec Merge in RSpec templates. Add Factory Girl. Jan 5, 2015
.rubocop.yml Auto Correct Mar 31, 2015
.rubocop_todo.yml Update Rubocop Apr 27, 2015
.ruby-version Bump ruby version for rspec testing framework Nov 29, 2016
.travis.yml Spring 2018 Mass Updates PR (#974) May 19, 2018 Fix numbering issue Dec 31, 2016
Dockerfile Move docker-specific config files into docker/ Apr 20, 2015
Gemfile Spring 2018 Mass Updates PR (#974) May 19, 2018
Gemfile.lock Spring 2018 Mass Updates PR (#974) May 19, 2018
LICENSE Revert license to Apache Feb 25, 2016 Update Oct 11, 2018
Rakefile Ran rubocop --autocorrect Mar 13, 2015 Ran rubocop --autocorrect Mar 13, 2015 Autolab v2.1.0 (#946) Dec 19, 2017

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.


We released new documentation! Check it out here.


Setting up Tests

  1. Add a test database in database.yml

  2. Create and migrate the database.

    RAILS_ENV=test bundle exec rake db:create
    RAILS_ENV=test bundle exec rake db:migrate

    Do not forget to use RAILS_ENV=test bundle exec in front of every rake/rails command.

  3. Create necessary directories.

    mkdir attachments/ tmp/

Running Tests

After setting up the test environment, simply run spec by:

bundle exec rake spec

Build Status Code Climate Test Coverage


We encourage you to contribute to Autolab! Please check out the Contributing to Autolab Guide for guidelines about how to proceed. Join us!


Autolab is released under the Apache License 2.0.

Using Autolab

Please feel free to use Autolab at your school/organization. If you run into any problems, you can reach the core developers at 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)