Metadata-Version: 2.1
Name: plagdef
Version: 1.5.1
Summary: A tool which makes life hard for students who try to make theirs simple.
Home-page: https://github.com/devWhyqueue/plagdef
License: GPL-3.0-or-later
Author: Yannik Queisler
Requires-Python: >=3.9,<3.11
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Dist: PyPDF2 (>=3.0,<4.0)
Requires-Dist: Werkzeug (>=2.2,<3.0)
Requires-Dist: beautifulsoup4 (>=4.11,<5.0)
Requires-Dist: click (>=8.1,<9.0)
Requires-Dist: deep-translator (>=1.9,<2.0)
Requires-Dist: fpdf2 (>=2.6,<3.0)
Requires-Dist: jsonpickle (>=3.0,<4.0)
Requires-Dist: langdetect (>=1.0,<2.0)
Requires-Dist: networkx (>=3.0,<4.0)
Requires-Dist: numpy (>=1.24,<2.0)
Requires-Dist: ocrmypdf (>=14.0,<15.0)
Requires-Dist: pdfplumber (>=0.7,<0.8)
Requires-Dist: pyside6 (>=6.4,<7.0)
Requires-Dist: python-magic (>=0.4,<0.5)
Requires-Dist: selenium (>=4.8,<5.0)
Requires-Dist: sortedcontainers (>=2.4,<3.0)
Requires-Dist: stanza (>=1.4,<2.0)
Requires-Dist: tqdm (>=4.64,<5.0)
Requires-Dist: urlextract (>=1.8,<2.0)
Requires-Dist: webdriver-manager (>=3.8,<4.0)
Description-Content-Type: text/markdown

# PlagDef

[![PyPI version](https://badge.fury.io/py/plagdef.svg)](https://badge.fury.io/py/plagdef)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/plagdef)
![GitHub](https://img.shields.io/github/license/devWhyqueue/plagdef)
[![Test](https://github.com/devWhyqueue/plagdef/actions/workflows/cd.yml/badge.svg)](https://github.com/devWhyqueue/plagdef/actions/workflows/test.yml)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=devWhyqueue_plagdef&metric=coverage)](https://sonarcloud.io/dashboard?id=devWhyqueue_plagdef)

A tool which makes life hard for students who try to make theirs simple.

# Installation

Get it from PyPI:

```
$ pip install plagdef
````

Or build it yourself:

```
$ git clone git://github.com/devWhyqueue/plagdef
$ poetry build
$ pip install dist/plagdef-{VERSION}.tar.gz
````

# Requirements

## Chrome

PlagDef uses Selenium to automate the translation of documents.
By default, it uses a headless version of Chrome.

## OCRMyPDF

This library is used for improved PDF text extraction.\
To install its necessary dependencies for your operating system take a look at:\
https://ocrmypdf.readthedocs.io/en/latest/installation.html

And don't forget to download the German language pack to your _tessdata_ folder from here:\
https://github.com/tesseract-ocr/tessdata

## Libmagic

**After** (important!) you installed PlagDef, install the libmagic library.\
PlagDef uses it to detect character encodings.\
Further instructions can be found here:\
https://github.com/ahupp/python-magic#installation

# Usage

Run the GUI:

```
$ plagdef-gui
````

Or if you prefer a CLI:

```
$ plagdef -h
````

# Development

Clone the repo and install dependencies:

```
$ git clone git://github.com/devWhyqueue/plagdef
$ poetry install
````

# Publish to PyPI

In your virtual environment build and upload PlagDef:

```
$ poetry publish --build
````

