-
Notifications
You must be signed in to change notification settings - Fork 334
3. Contributing to JPlag
tsaglam edited this page Feb 20, 2025
·
6 revisions
We're happy to incorporate all improvements to JPlag into this codebase. Feel free to fork the project and send pull requests. If you are new to JPlag, maybe check the good first issues.
Please try to make well-documented and clearly structured submissions:
- All artifacts (code, comments...) should be in English
- Please avoid abbreviations!
- Make use of JavaDoc/TsDoc to document classes and public methods
- We provide a formatter configurations
- For java code we use this formatter configuration, which is enforced by spotless
- Eclipse/IntelliJ users can use it directly
- It can always be applied via maven with
mvn spotless:apply
- For typescript/vue code we use prettier und eslint
- They can both be executed with
npm run lint
andnpm run format
- They can also be executed automatically on commit
- They can both be executed with
- For java code we use this formatter configuration, which is enforced by spotless
- Use well-explained pull requests to propose your features
- When re-using code from other projects, mark them accordingly and make sure their license allows the re-use
- Your changes should always improve the code quality of the codebase, especially when working on older components
- Your git messages should be concise but, more importantly, descriptive
- Ensure your git history is clean, or else your PR may get squashed while merging
- When creating a PR, make sure to provide a detailed description of you changes and what purpose they serve
- Download or clone the code from this repository.
- Run
mvn clean package
from the root of the repository to compile and build all submodules. Runmvn clean package assembly:single -P with-report-viewer
instead if you need the full jar, which includes all dependencies. - You will find the generated JARs in the subdirectory
jplag.cli/target
.
- Run
npm install
to install all dependencies. - Run
npm run dev
to launch the development server. The report viewer will be available athttp://localhost:8080/
. Different versions of the build command are described in the report-viewer README.
The repository contains a pre-commit hook that prevents commits if they fail spotless and executes prettier and eslint on report-viewer code.
To set up the hooks, call git config --local core.hooksPath gitHooks/hooks
once within your local repository or run npm i
/npm run prepare
in the report-viewer package.