2amigos/qrcode-library
A PHP QR code generation library from 2amigos. Build customizable QR codes with configurable size, colors, margins, and error correction, then output them in common image or vector formats. Its simple object-oriented API works well in Laravel and other PHP apps.
ext-gd only). That removes a system-level dependency from Docker images, CI, and Windows dev/ops environments (the release fixes the Windows CoderModulesPath failure). A viable roadmap item is "retire ImageMagick from our runtime images."PHOTO (Base64/data-URI/local file) and MeCard ORG extend what we can ship in "save my contact" and event-badge flows without custom serialization work.QrCodeAction (Yii3, Mezzio, Slim, any PSR-15 app) is useful if we run services outside Laravel or want to share QR behavior across a polyglot estate. For a Laravel-only shop this is nice-to-have rather than decisive.Da\QrCode\Bridge\<Framework>\, renames StyleManager::getGradientTye() → getGradientType(), changes QrCode::getGradientType() to return a GradientType, drops marc-mabe/php-enum, and bumps bacon/bacon-qr-code to ^3 and khanamiryan/qrcode-detector-decoder to ^2. Adoption should be scheduled as a deliberate migration, per the Upgrade Guide.For executives: This release lets us offer QR-based features (tickets, 2FA, contact cards, event badges) on a well-maintained open-source library, and it removes a system dependency (ImageMagick) from our deployment stack — lower ops risk, simpler environments, less to patch. It's a major version with breaking changes, so the cost is an engineering migration, not a rewrite.
For engineering: 4.0.0 modernizes the package: PHP 8.3/8.4/8.5 with a CI matrix, PHPStan and php-cs-fixer v3, GD as the default PNG/JPG backend (ImageMagick now opt-in), a framework-agnostic PSR-15 bridge, and fixes for gradient rendering and the standalone Laravel QrCodeFactory. Upgrading from 3.x requires following UPGRADE-4.0.md: update adapter imports to the Bridge\<Framework> namespaces, adjust gradient-type call sites, and re-run dependency resolution against the bumped bacon/bacon-qr-code and detector libraries. Plan it as a scoped migration with a test pass over every QR output path before rollout.
How can I help you explore Laravel packages today?