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 feebe6c938 v2019.9.1 10 months ago
.hive-bt v2019.9.1 10 months ago
catsoop v2019.9.1 10 months ago
vim vim syntax highlighting: support for @{...} python and for <comment> tags 11 months ago
website some cleanup 11 months ago
.gitignore move main repo to git 10 months ago
CHANGELOG v2019.9.1 10 months ago
CONTRIBUTORS update some pieces for new infrastructure 1 year ago
LICENSE update license to AGPLv3 3 years ago
LICENSE.bundled_software add ace code editor 1 year ago
LICENSE.included_software we no longer include literal_eval 1 year ago rudimentary support for syntax highlighting in vim 1 year ago
README update readme 1 year ago
requirements.txt add nicer links to sections, and permalink icons after section headers 11 months ago by popular demand, introduce a codename for v2019.9 1 year ago


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


* Web Site:
* IRC: #catsoop on OFTC (
* Mailing List:
(subscribe at

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


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.