Thank you for considering contributing.
-
Clone the repository and install dependencies:
composer install
-
Run tests and code style checks:
composer test composer cs-check composer qa # both
Optionally use Docker from the bundle root:
make up && make install make test && make cs-check make validate-translations # ensure all translation YAML files have the same keys
- PHP: PHP-CS-Fixer with the bundled config (Symfony rules, strict types). Run
composer cs-fixto fix. - TypeScript: follow the existing style in
src/Resources/assets/signable-editor.ts. - Documentation: English for code comments, PHPDoc, JSDoc and docs in
docs/.
- The form theme (
src/Resources/views/form/theme.html.twig) includes the PDF viewer CSS and JS (PDF.js, pdf-signable.js) only once per request using the Twig functionnowo_pdf_signable_include_assets()fromNowo\PdfSignableBundle\Twig\NowoPdfSignableTwigExtension. If you overridesignature_coordinates_widgetand still want to output the bundle assets, use the same function so multiple widgets on the same page do not duplicate the link/scripts.
- Target the
master(ormain) branch. - Keep changes focused; prefer several small PRs over one large one.
- Ensure tests pass and code style is clean (
composer qa). - Update the Changelog under
[Unreleased]for user-facing changes.
- Use the GitHub issue tracker.
- For security issues, see SECURITY.md.
By contributing, you agree that your contributions will be licensed under the MIT License.