helgesverre/blade-heroicons-upgrader
Blade Heroicons Upgrader automatically migrates your Blade templates from older Heroicons components to the current syntax, rewriting icon references and handling renamed or removed icons so you can upgrade quickly and safely with a simple Artisan command.
composer test-install and an aggregate composer e2e command, 100% coverage, and one type fix in the UpgradeIcons command. The decision-relevant signal is credibility, not capability: a tool that is about to rewrite your templates now has static analysis and a green install matrix. Treat this as a green light on the existing assessment, not a new feature to plan around.Consider adopting when:
blade-ui-kit/blade-heroicons component naming) and have decided to move to v2.@svg calls, i.e. the thing a codemod can actually see.Look elsewhere when:
Verify before committing: these release notes are internal-only and describe the package's test and analysis setup, not its rewrite rules. Before pointing it at production templates, confirm the command signature, the supported Heroicons v1 → v2 mapping, and whether it supports a dry-run/diff mode. Run it on a throwaway branch first and read the diff.
Executive summary. This is a small, free, open-source Laravel developer tool that automates a specific tedious upgrade: converting our Blade Heroicons usage from the old v1 component names to v2. It replaces manual template editing — hours of low-value, high-error-rate work — with a scripted change that produces a reviewable diff on a branch and can be thrown away afterwards. Cost is one development-only dependency; there is no runtime footprint in production and no vendor lock-in. The just-published v1.2.2 is a quality release: static analysis (PHPStan), 100% test coverage, an end-to-end test command, and installation verified against Laravel 10, 11, and 12. That is exactly the maturity signal we want before letting a tool touch our templates, and it also confirms compatibility with both our current and target Laravel versions. Recommendation: green-light a timeboxed spike on a branch, review the diff, and decide to merge or discard from there.
For engineering. Composer dev-dependency plus an Artisan command; runs locally or in CI, output is a git diff. No schema, infrastructure, or production dependency changes, so the blast radius is limited to the files it rewrites and is fully reversible via git. The new composer test-install and composer e2e commands mean we can validate the tool against our Laravel version before running it in anger, and the PHPStan + 100% coverage work means the rewrite logic itself is now type-checked and exercised. Known limitation to plan around: dynamically constructed icon names will not be caught — budget a manual audit pass for those.
How can I help you explore Laravel packages today?