laravel-readiness / tool
CLI: уровень готовности PHP-файлов к миграции в Laravel
v0.3.0
2026-07-14 10:08 UTC
Requires
- php: ^8.5
- illuminate/filesystem: ^13.0
- illuminate/support: ^13.0
- nikic/php-parser: ^5.7
- symfony/console: ^8.1
Requires (Dev)
- laravel/pint: ^1.29
- pestphp/pest: ^4.0
- phpstan/phpstan: ^2.2
- rector/rector: ^2.0
- symfony/var-dumper: ^8.1
This package is auto-updated.
Last update: 2026-07-14 14:22:21 UTC
README
CLI для охраны PHP-файлов при миграции в Laravel: помечаешь файл меткой — при правке проверка не даёт скатиться в легаси.
Запуск
# PHP 8.5+
composer install
php bin/laravel-ready --app-root=/path/to/app path/to/File.php
Windows: скачать laravel-ready.exe с Releases (PHP на машине не нужен).
laravel-ready.exe --app-root=C:\path\to\app C:\path\to\File.php
Docker:
docker build -t laravel-ready .
docker run --rm -e FORCE_COLOR=1 \
-v /path/to/project:/project \
laravel-ready \
--app-root=/project/project/app \
/project/project/app/SomeFile.php
Exit 0 — ок для хука/CI, 1 — guard провален (или нет/несколько меток).
Метки (PHPDoc)
| Метка | Смысл |
|---|---|
@laravel-ready |
Под охраной: без AST-блокеров, deps ок |
@laravel-adapter |
Мост к легаси для Laravel-контура |
@legacy-adapter |
Мост только внутри легаси; AST только по @allows |
@legacy-perfect |
Почищен, но остаётся в легаси-контуре |
@legacy-code |
Явный легаси (findings не валят exit) |
@allows |
Модификатор для @legacy-adapter: $_COOKIE, setcookie, … |
@skipCheck |
Модификатор: при blockers не валить guard (exit 0, findings видны); на файл без/с несколькими метками не действует |
Архитектура и модель: ARCHITECTURE.md, READINESS_MODEL.md, RESOLUTION_AND_OUTPUT.md, MANIFEST.md.