Skip to content

oskmasi/ilias-extract

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📂 Ilias Extract

Ilias Extract is a Rust command-line tool that extracts submissions zip files downloaded from Ilias and organizes them into a structured folder. It can also generate summary Markdown files for each team.


⚙ Features

Feature Description
📥 Extract Submissions Unzip and organize student submissions automatically.
📝 Generate Summaries Optionally generate a Markdown summary file for each student.

📂 Folder Structure After Extraction

output/
├── alice123_bob345/
│   ├── submission_1.pdf
│   ├── submission_2.txt
│   └── summary.md    # if run with --summary
├── john425/
│   ├── submission_1.txt
│   └── summary.md

📦 Installation

Build from source using Cargo:

git clone https://github.com/oskmasi/ilias-extract.git
cd ilias-extract
cargo build --release

The executable will be available in: target/release/ilias-extract

🚀 Usage

ilias-extract <INPUT_ZIP> <OUTPUT_DIR> [OPTIONS]

Options

Flag Description
-s, --summary Generate a Markdown summary for each student.
-o, --overwrite Enable overwriting of existing files.
--purge Clear the target directory before extraction (⚠ careful!).
-v, --verbose Enable verbose output.

Example Commands

Command Description
ilias-extract submissions.zip ./output Basic extraction.
ilias-extract submissions.zip ./output --summary Generate summaries for each team.
ilias-extract submissions.zip ./output -s --purge Clears output folder and generates summaries for each team.

🔧 Dependencies

  • clap – Command-line argument parsing
  • anyhow – Error handling
  • zip – Zip file handling
  • regex – Regex pattern matching
  • calamine – Excel file reading
  • tempfile – Temporary file handling
  • chrono – Date and time utilities

Contributions, issues, and feature requests are welcome! Feel free to fork the repo and submit a pull request.

Transparency: This README.md has been AI-generated. The code is entirely human though

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages