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.0.4.tar.gz (16.5 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.0.4-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: curricula-2.0.4.tar.gz
  • Upload date:
  • Size: 16.5 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.0.4.tar.gz
Algorithm Hash digest
SHA256 789e095f1c02eddc191507fb86b71db203014fe7d10d64f43e1c6b7967ef4d25
MD5 f2a81e6a5f15216207cc01c84cc95622
BLAKE2b-256 b9f3fdb4a6ad046f364aaafe07b8df16381d91b10c2ea9db529f6057683fcb7f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: curricula-2.0.4-py3-none-any.whl
  • Upload date:
  • Size: 32.3 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.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 23a0bcd3960803849d298e697d9a1940b978436fb64d06385dacb08366d4cf62
MD5 0e163d199bcbde742cfe2c6b664d4215
BLAKE2b-256 8202ed4954d1cb412702941ed2acca333d89ace0a58f804a13ded444d854005d

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