Fluent Facade
Chain methods on
QrCode:: to set size, color, format, and error correction
— then call generate() to get the result.Blade Component
Drop
<x-qr-code data="…" /> into any template and get an accessible,
inline SVG or base64 image with no extra PHP.Artisan CLI
Run
php artisan qr:generate for interactive generation or pass flags for
scripted, non-interactive output.Rich Data Types
Built-in helpers for URLs, Email, SMS, WiFi, vCard, MeCard, Geo, WhatsApp,
Telegram, Calendar Events, BTC, and Ethereum.
Multiple Formats
Output SVG (default, no extensions needed), PNG, WebP, or EPS. PNG and WebP
use Imagick when available, GD otherwise.
Deep Customization
Control colors (RGB, RGBA, CMYK, grayscale), gradients, dot/round/square
module styles, eye styles, image merging, and error correction levels.
Auto-Discovery
The service provider and
QrCode facade alias are registered automatically
— no config/app.php edits required.Macros
Register your own named data types with Laravel’s
Macroable trait and call
them as first-class facade methods.Requirements
| Dependency | Required version |
|---|---|
| PHP | 8.2 or higher |
| Laravel | 12.0 or higher |
ext-imagick | Optional — recommended for PNG/WebP performance |
ext-gd | Optional — automatic fallback for PNG/WebP when Imagick is absent |
SVG and EPS generation require no PHP image extensions.
ext-imagick or
ext-gd is only needed when you output PNG or WebP.Version guidance
| Package version | PHP | Laravel | Status |
|---|---|---|---|
| v3.x (current) | 8.2+ | 12+ | Active development |
| v2.x | 8.2+ | 11+ | Maintenance only |
| v1.x | 8.1+ | 10 | Maintenance only |
linkxtr/laravel-qrcode:^3.0 to get the latest v3.x release with semantic versioning protection. If your project runs Laravel 10, use ^1.0 instead.