A set of toolkit for faculty members in the Xidian University.
To create an environment for development, you can use the following command:
conda create -n xdufacool-dev python=3.12 "pandoc<3.2"
conda activate xdufacool-devTo install the package, you can use the following command:
pip install -e .The xdufacool toolkit provides two main subcommands: create and collect.
The create subcommand is used to create assignment packages for distribution.
Usage:
xdufacool create [-h] [-c CONFIG] [-o OUTPUT_DIR] [assignment_ids ...]Arguments:
-h,--help: Show help message and exit.-c,--config: Path to the configuration file (default:config.yml).-o,--output-dir: Output directory for the assignment packages (default:dist).assignment_ids: (Optional) List of assignment IDs to create. If not specified, all assignments in the config file will be created.
Example:
To create all assignments specified in the config.yml file and save them to the dist directory:
xdufacool createTo create only the assignments with IDs hw01 and hw02:
xdufacool create -c config.yml -o assignments hw01 hw02The collect subcommand is used to collect student submissions.
Usage:
xdufacool collect [-h] [-c CONFIG] submission_dir [assignment_ids ...]Arguments:
-h,--help: Show help message and exit.-c,--config: Path to the configuration file (default:config.yml).submission_dir: The directory containing student submissions.assignment_ids: (Optional) List of assignment IDs to collect. If not specified, submissions for all assignments in the config file will be collected.
Example:
To collect submissions for all assignments from the submissions directory:
xdufacool collect submissionsTo collect submissions only for the assignment with ID hw01:
xdufacool collect -c config.yml submissions hw01The xdufacool toolkit is configured using a YAML file (default: config.yml). The configuration file specifies the course details, assignments, and other settings. Refer to the example config.yml file for more details on the configuration format.