Checklist for module development
Compatibility
Java 17 is used as target level
The FSM Dependency Detector does not show any usage of non-API classes
Dependencies
Checking for newer version (e.g. Guava, Gson, commons-io, ...)
Checking for vulnerabilities (e.g. on https://cve.mitre.org)
Do not include large libraries that can easily be replaced
Documentation
README documentation has been added
A reasonable amount of JavaDoc is present for most classes
Code style
Static code analysis detects duplicate code, unused imports, slow String concatenation, inconsistent resource bundles, and other issues
Logging is performed with SLF4J or FirstSpirit-Logger
No unnecessary debug logging
Do not log credentials
Default module / feature requirements
Module/Component name follows naming convention
Web resources are using unique instead of common names (e.g. web/index.js) to prevent them from being overwritten by other components
Usage test
Test plan exists