A Rust implementation of the Dolos source code plagiarism detection CLI.
Note: This project is intended to eventually replace the existing Node.js CLI in the main Dolos repository.
dolos— the Rust CLI for running similarity analyses on source code files.tree-sitter-grammars— a unified crate that bundles tree-sitter grammar bindings for 29 programming languages behind a single ergonomic API. See its README for details.
Requires a recent stable Rust toolchain. To build with support for all languages:
cargo build --features all-languagesTo build with only specific languages:
cargo build --features lang-python,lang-javascript# Analyze a directory of files
dolos run path/to/files/
# Analyze specific files
dolos run file1.py file2.py file3.py
# Output results as CSV
dolos run --output-format csv --output-destination ./results/ path/to/files/Dolos is an active research project by Team Dodona at Ghent University. If you use this software for your research, please cite:
- Maertens et al. (2024) SoftwareX doi:10.1016/j.softx.2024.101755
Licensed under the MIT license.