2022-09-01 21:07:01
Есть такой малоизвестный микрофреймворк FlightPHP.
Я решил им воспользоваться для рефакторинга iptv.axenov.dev. Нацепил твиг, обмазал коллекциями, насыпал своих хелперов с конфигами, завернул в докер и получилось годно.
Местами запаривался, потому что привык запариваться к некоторым (действительно удобным) фишкам #laravel и попытался по минималке их имплементировать. Потом подчищал откровенно чересчур усложнённое, а местами поклал болт.
В чистом виде, этот проект на FlightPHP мог бы уместиться в паре файлов, как и ранее, но я хотел предсказуемого порядка. (Таки приятно, когда сам строишь свой движок, не упираясь в кем-то придуманную структуру и правила.)
Роутинг, шаблонизатор какой хочешь, DI, реквесты, респонсы, мидлвари. Всё, что тебе надо — в единственном фасаде. Чего не хватает — расширил фасад через map()/register() и ураагша.
Под капотом с лупой этот фреймворк не изучал, так что за его адекватность зуб не дам, хотя отладчиком я приходил в одно странное место. Вообще, там довольно много динамики и порой непонятно где нахрен ошибка.
Однако он довольно прост в использовании, гибок, шустр и расширябелен для небольших проектов и прототипов. Сам по себе зависимостей не тянет, самодостаточен, потихоньку развивается.
Вот как всё было плохо, и вот как всё стало прекрасно:
https://github.com/anthonyaxenov/iptv
Короче, рекомендую. Мне нравится. Хочу поверх него дописать свой framework-like boilerplate, чтобы уже на нём писать какие-нибудь небольшие проекты для души. Не везде же симфони с ларами пихать.
#моё #foss #php @axenov_dev
8 views18:07