ozankurt/laravel-modules-licensing
A Laravel package for licensing modular applications: validate license keys, activate or deactivate modules, and gate premium features with a configurable licensing layer designed to integrate smoothly with Laravel Modules.
laravel-modules-core. That widens the addressable module catalog beyond first-party code — a packaging and go-to-market decision, not just a technical one.laravel-modules-core ^2.0 a hard gate for the licensing layer. That is a roadmap commitment with a customer-facing release consequence: any module release that depends on licensing v2 cannot ship to customers still on Laravel 12.Adopt when:
ext-sodium; v2 has no maintenance path for Laravel 12 / PHP 8.3, so staying put means freezing at v1.1.0.ozankurt/laravel-modules-core stack, or you specifically need a client SDK that does not require it.Look elsewhere when:
ozankurt/laravel-modules-core ^2.0 requirement, or you have strict dependency-review constraints.Executives. This is the paywall for a module business, and v2.0.0 is a platform-baseline decision rather than a feature release. It adds no new surface area — the public API, licensing server, Ed25519 offline verification, Core-free client SDK, HTTP endpoints, and Filament resources are identical to v1.1.0 and the full suite passes on Laravel 13 with no source change. What v2 does change is requirements: PHP 8.4 and Laravel 13 become mandatory, dropping Laravel 12 and PHP 8.3. The decision to make is scheduling: move the host application forward and stay on the supported track, or freeze licensing at v1.1.0 and accept that we are off it. Migration cost is ours, not the vendor's, and it gates any future module release that depends on licensing. Two standing risks to note: running the licensing server is our operational responsibility, and offline keys make revocation best-effort, so key rotation belongs in the product terms.
Engineering. Requirements-only bump: PHP ^8.4 with ext-sodium, Laravel ^13.0, ozankurt/laravel-modules-core ^2.0, and optional Filament 3/4/5 for the admin resources. No public API changed — the licensing server, offline key verification, client SDK, HTTP endpoints, and Filament resources are the same as v1.1.0 and the suite is green on Laravel 13 without a single source change. The toolchain moved to Pest 5 / Testbench 11 / PHPUnit 13 and spatie/laravel-package-tools to ^1.93 (1.92.x caps at Laravel 12), so CI config and any copied test scaffolding need the same bump; CI now runs PHP 8.4 / Laravel 13.* / Testbench 11.* across Filament 3, 4, and 5. Upgrade path: move the host app to Laravel 13 / PHP 8.4 and core ^2.0, then composer require ozankurt/laravel-modules-licensing:^2.0.
How can I help you explore Laravel packages today?