Skip to main content

Prerequisites

Before you begin, make sure you have the following installed:
  • Docker and Docker Compose (recommended path)
  • PHP 8.1+ and Composer (required for the non-Docker path)
  • pnpm (for building frontend assets)

Setup

Available Make targets

All targets run commands inside the Docker container. The container starts automatically if it isn’t running.

Composer scripts

These scripts run directly with composer inside the container (or locally without Docker):

Running tests

The bundle has 150+ tests targeting 90%+ code coverage. CI runs the full matrix across PHP 8.1–8.5 and Symfony 6.4, 7.0, 8.0.

Test structure

Code quality tools

The bundle uses three tools to maintain code quality:
  • PHP-CS-Fixer — enforces PSR-12 code style (config: .php-cs-fixer.dist.php)
  • PHPStan — static analysis
  • Rector — automated refactoring
Run all checks at once:

Building frontend assets

The bundle ships TypeScript and SCSS assets compiled with Vite.

Asset locations

Main output files in src/Resources/views/assets/dist/:
  • index.min.js — bundled TypeScript (IIFE)
  • style.min.css — compiled SCSS

CI/CD

GitHub Actions run on every push and pull request:
  • Tests — PHP 8.1–8.5 × Symfony 6.4, 7.0, 8.0 matrix
  • Code style — PHP-CS-Fixer; auto-fix on push to main/master
  • Coverage — 90% minimum enforced in CI
  • Assets — TypeScript and SCSS build verified
  • Dependabot — automated dependency update PRs