CAT-SOOP is a flexible, programmable learning management system based on the Python programming language.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
adam j hartz d8516f2e4f changelog update 2 months ago
catsoop code formatting (black) 2 months ago
vim vim syntax highlighting: support for @{...} python and for <comment> tags 4 months ago
website some cleanup 4 months ago
.gitignore move main repo to git 3 months ago changelog update 2 months ago Update '' 2 months ago
LICENSE update license to AGPLv3 2 years ago
LICENSE.bundled_software add ace code editor 10 months ago
LICENSE.included_software we no longer include literal_eval 7 months ago rudimentary support for syntax highlighting in vim 5 months ago readme 2 months ago
requirements.txt add nicer links to sections, and permalink icons after section headers 4 months ago pypi readme 2 months ago

/    /\__/\
\__=(  o_O )=
 |_ |_ |_ |_


CAT-SOOP is a flexible, programmable learning management system originally developed primarily for use in MIT’s 6.01 (Introduction to Electrical Engineering and Computer Science via Robotics).

CAT-SOOP is free/libre software, available under the terms of the GNU Affero General Public License, version 3+. Please note that the terms of this license apply to the CAT-SOOP system itself and any plugins in use, but not to any course material hosted on a CAT-SOOP instance, unless explicitly stated otherwise.


To install, run:

$ pip3 install catsoop

Or, from a clone of the repository, run:

$ python3 install

To generate a file, run:

$ catsoop configure

If you are setting up a public-facing copy of CAT-SOOP (as opposed to a local copy for debugging purposes), see the instructions at

To start the server, run:

$ catsoop start

To run all the unit tests:

$ python3 test




CAT-SOOP incorporates pieces of third-party software. Licensing information for the original programs is available in the LICENSE.included_software file. The CAT-SOOP distribution also includes several pieces of third-party software. Licensing information for these programs is included in this distribution, in the LICENSE.bundled_software file.