CLI интерфейс для Laravel Artisan

в 15:21, , рубрики: artisan, cli, composer, console, laravel, php, UI

Хочу представить composer-пакет для Laravel, возможно кому-то придётся по душе.

Суть проще показать, чем объяснять.

image

Кого заинтересовало — прошу под кат.

А зачем?

А почему бы и нет? Я, например, пришёл к этой мысли после того как в очередной раз забыл как правильно — «make:migration» или «migration:make» или может совсем какое-то «create:migration». Вот ей богу, каждые несколько дней приходится создавать эти миграции, а я всё равно не всегда помню название команд! А уж о каких-нибудь «config:clear», которые используются крайне редко — так вообще молчу.

Это раз. А два — мне всегда нравились консольные интерфейсы. Есть в них что-то эдакое. Поэтому решил совместить приятное с полезным.

А какие команды поддерживаются?

Абсолютно все, которые работают через стандартный artisan, потому как я использую те же классы что и он. Ну, это в теории :) На практике пока проблем не встречал, но уверен что более широкая аудитория с чем-то да столкнётся.

CLI интерфейс для Laravel Artisan - 2
Кастомные команды в моём проекте

А я не люблю синюю консоль

No problem, цвета и размеры настраиваются в файле config/artisanui.php. Главное не забудьте сделать config:cache после изменений.

Уговорил, как попробовать?

Да вот тут github.com/VladReshet/ArtisanUI, собственно, всё написано. Поставил пакет, добавил сервис провайдер в config/app.php, запаблишил его — готово, можно пробовать. Есть правда небольшая проблема с композером — если у вас в composer.json указано minimal-stability: stable, то ничего не получится, так как временно я использую нестабильную версию нужной мне зависимости.

А что под капотом?

А под капотом вот эта прелесть github.com/php-school/cli-menu. Надеюсь авторы найдут время допилить следующий релиз.

А на сколько стабильно?

На «свежем» laravel, только установленном — проверял все пункты стандартного artisan, всё работает. Со зрелыми проектами — ну, должно работать, а там, если что, issues на гитхабе всё покажут) В любом случае это решение скорее для локальной разработки, чем для использования в продакшн.

Ну и ещё несколько скриншотов напоследок:

CLI интерфейс для Laravel Artisan - 3

CLI интерфейс для Laravel Artisan - 4

Комментарии, конструктивные замечания, рекомендации — приветствуются. Даже если никто не заинтересуется — это был интересный процесс скрещивания ежа с ужом копания в исходниках Laravel :)

Автор: vlreshet

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js