Skip to main content

A content manager and grading toolkit for evaluating student code

Project description

Curricula

Codacy Badge

Curricula is a set of specifications and tools for managing content and grading assignments in a college-level computer science setting. It is currently being developed by Noah Kim for CSCI 104, the most challenging core-track C++ course at USC for CS majors.

How Does it Work?

Curricula covers the two main aspects of managing assignments for a programming course.

  1. Assignment creation: Curricula provides a schema for developing assignments per-problem rather than all at once. This allows content producers to easily port assignments from previous semesters to the evolving parameters of the current. Assignments can then be built up from their components problems, separating each and combining their independent parts into packages for publishing, grading, etc.

  2. Submission grading: the other function of Curricula is to provide a robust framework for testing all aspects of submitted code. This includes checks for things like correctness, time complexity, resources leakage, and even code style, all while facilitating granular configuration. These tests are written to a universal output format so that they can be reinterpreted without having to re-run the code.

Using Curricula

Curricula can be used by installing the command line interface. This repository only contains the core functionality.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

curricula-2.1.2.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

curricula-2.1.2-py3-none-any.whl (32.5 kB view details)

Uploaded Python 3

File details

Details for the file curricula-2.1.2.tar.gz.

File metadata

  • Download URL: curricula-2.1.2.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.1

File hashes

Hashes for curricula-2.1.2.tar.gz
Algorithm Hash digest
SHA256 79e42bf5a3b4011dac139e4f72b03aa458d099a20a48cd184de4249378bb707b
MD5 e2a2a24f49aaf730f0e4f97d4443f0b4
BLAKE2b-256 1e39dc338a4771f05cbafcddb4ffb04fc797fbc64a8f0f39f51c5e1a051bde16

See more details on using hashes here.

File details

Details for the file curricula-2.1.2-py3-none-any.whl.

File metadata

  • Download URL: curricula-2.1.2-py3-none-any.whl
  • Upload date:
  • Size: 32.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.1

File hashes

Hashes for curricula-2.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 56be8e190e63434d6af4c7e6b7e0f3c569c4f2145f99614d5787e758412e77c9
MD5 a4a244519819ca32ccba293b325435d5
BLAKE2b-256 8139f38f4510da3423518ac50a218178fe18db25cf4617bf1bed03fa87950db9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page