nowo-tech/cookie-consent-bundle

Symfony bundle providing a GDPR cookie consent modal with category toggles and optional consent logging

Maintainers

Package info

github.com/nowo-tech/CookieConsentBundle

Homepage

Issues

Type:symfony-bundle

pkg:composer/nowo-tech/cookie-consent-bundle

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

v1.0.0 2026-06-15 08:52 UTC

README

CI Packagist Version Packagist Downloads License PHP Symfony GitHub stars Coverage

Symfony bundle that renders a GDPR cookie consent modal with category toggles, AJAX form submission, optional consent logging, and configurable Doctrine table prefix.

Frontend behavior is implemented in TypeScript and built with Vite (make assetssrc/Resources/public/nowo-consent-modal.js).

Extracted and modernized from the podologiapriego.com implementation (FatalNetwork/ConnectHolland CookieConsentBundle fork).

Documentation

Additional documentation

Quick start

composer require nowo-tech/cookie-consent-bundle
# config/packages/nowo_cookie_consent.yaml
nowo_cookie_consent:
    table_prefix: 'app_'   # optional; yields app_nowo_cookie_consent_log
    use_logger: true
{# templates/base.html.twig #}
{% if not nowo_cookie_consent_is_saved() %}
    {{ render(path('nowo_cookie_consent.show_if_not_set')) }}
{% endif %}

Install public assets:

php bin/console assets:install

Demo

make -C demo up-symfony8
# Bootstrap demo: http://localhost:8014

make -C demo up-symfony8-tailwind
# Tailwind demo: http://localhost:8015
  • demo/symfony8/ — FrankenPHP Symfony 8 app with Bootstrap 5
  • demo/symfony8-tailwind/ — same demo with Tailwind CSS and ui_theme: tailwind

See Demo with FrankenPHP for development vs. production worker mode.

Tests and coverage

Language Lines (approx.) Command
PHP ~100% make test-coverage
TypeScript ~96% make test-ts
make test
make test-coverage
make test-ts
make assets
make release-check

PHP coverage target is ~100% (currently ~100%; see Release); exclusions must be justified in phpunit.xml.dist.

Found this useful?

If this bundle helps your project, consider starring the repository on GitHub or installing from Packagist.