JPlag

JPlag is one of the most popular source code plagiarism detection systems worldwide.

531
mentions
7
contributors

What JPlag can do for you

JPlag is a state-of-the-art source code plagiarism detector. It allows one to check a set of programs for suspicious similarities and thus helps its users tackle plagiarism detection at scale in an ethical way. JPlag compares the structure of the programs by extracting an abstraction layer from their parse trees. Thus, it is resilient to attempts to obfuscate the plagiarism. JPlag offers a powerful graphical interface to analyze its result, allowing to detect outliers and trace similarities between pairs of suspicious programs. Furthermore, JPlag is open-source and can be executed locally, thus complying with the GDPR.

JPlag was created in 1996 and is still actively developed and maintained at Karlsruhe Institute of Technology (KIT). JPlag supports Java, C#, C, C++, Python, Javascript, Typescript, Go, R, Rust, Kotlin, Swift, Scala, and other languages.

Explore Further

UI Showcase

The overview shows a similarity distribution and top list for all comparisons to identify suspicious outliers:
JPlag Report Viewer Overview

The comparisons view allows inspecting a comparison in detail and analyzing what code segments match:
JPlag Report Viewer Cluster View

The cluster view helps to understand group dynamics and complex relations between multiple programs:
JPlag Report Viewer Comparison View

Logo of JPlag
Keywords
Programming languages
  • Java 60%
  • ANTLR 14%
  • C++ 5%
  • Rust 5%
  • Vue 5%
  • TypeScript 4%
  • Python 2%
  • Scala 2%
  • C# 1%
  • Other 2%
License
  • GPL-3.0-only
</>Source code
Packages
github.com
mvnrepository.com
central.sonatype.com

Participating organisations

Karlsruhe Institute of Technology (KIT)

Reference papers

Mentions

Contributors

Timur Sağlam
Project Lead
Karlsruhe Institute of Technology
Sebastian Hahner
Sebastian Hahner
Maintainer
Karlsruhe Institute of Technology
Larissa Schmid
Larissa Schmid
Maintainer
Karlsruhe Institute of Technology
AV
Alexander Vogt
Student Developer (Frontend)
Karlsruhe Institute of Technology
AM
Alexander Milster
Student Developer (Backend)
Karlsruhe Institute of Technology
Tobias Hey
Tobias Hey
Maintainer (Former)
Karlsruhe Institute of Technology