The Dragon Code News
258 subscribers
210 photos
7 videos
4 files
234 links
Рассказываем о том, над чем работаем и что может быть полезным разработчикам 🙂

dragon-code.pro
Download Telegram
Laravel Feeds получила красивую доку и читается значительно проще портянки в README 🙂

Да, основные файлы конфигураций были скопипащены у https://laravel-lang.com, так что в некоторых местах можно найти отсылки 😅

Все нашли? 😉

https://feeds.dragon-code.pro
🔥6
Интересный сайт для быстрого удаления фона с изображений.

Обязательно включите звук кликнув по надписи "Click to enable audio" - это позволит лучше погрузиться в атмосферу происходящего.

бырыбырыбырыбырыбыры (с) 😅

https://tools.dverso.io/bgremove/
😁1
Разные изображения для светлой и тёмной тем на markdown страницах GitHub? Легко!

Всего-то нужно использовать фрагменты URL #gh-light-mode-only и #gh-dark-mode-only.

Например:

![feeds](images/light.png#gh-light-mode-only)
![feeds](images/dark.png#gh-dark-mode-only)


Пощупать руками можно здесь 😎
🔥7
📃 Laravel Feeds вышел в релиз!

Laravel Feeds - это лёгкий и быстрый способ экспортировать большие объёмы данных для маркетплейсов, sitemap и других потребителей.


Установить зависимость можно через Composer:
composer require dragon-code/laravel-feeds


🌟 Особенности проекта:

— Разбиение результатов при запросах к БД (chunk)
— Режим черновика в процессе наполнения файла
— Лёгкий маппинг свойств в виде привычного массива
— Поддержка Dependency Injection для всех классов
— Полная кастомизация хедера, футера и рут элемента
— Генерация любых фидов, карт сайтов и т.д.
— Поддержка быстрого создания классов с Laravel Idea


📔 В документации Вы найдёте расширенную информацию по использованию Laravel Feeds.

Также в ней доступен раздел рецептов с готовыми пресетами классов и результатом их выполнения! 😍
👍7🔥4❤‍🔥21🤔1
Легаси код сгенерировал XML файл фида за 5 минут.
Laravel Feeds справился за 36 секунд 😎

Тот же объём данных, тот же конечный результат, прирост скорости на 88%.


 ------- --------------  ---------------
# Legacy Dragon Code
------- -------------- ---------------
min 297335.54 ms 36187.14 ms
max 301008.29 ms 37282.62 ms
avg 299113.61 ms 36723.00 ms
------- -------------- ---------------
Order - 2 - - 1 -
------- -------------- ---------------


Измерение времени выполнения производилось бенчмарком с тремя итерациями на каждый фид.

https://feeds.dragon-code.pro
🔥13
Laravel Feeds теперь умеет работать не только с XML форматами фидов, но ещё и с JSON и JSON Lines 😍

Версия 1.5 уже в релизе 🥳

https://feeds.dragon-code.pro
4🔥4
Микро-гайд для тех, кто не в курсе 🙂

Для обновления контейнеров в Docker на свежие версии воспользуйтесь консольными командами:

docker compose pull
docker compose restart


И всё.
👍3
Поздравляю с 256-м днём этого года!

Пусть ваши проекты будут как хороший кофе: крепкими, пробуждающими и с приятным послевкусием. Пусть код всегда запускается без ошибок, жизнь радует новыми возможностями, идеи всегда находят отклик в мире, а проекты расширяют горизонты знаний и возможностей!

Deploy, Comrades! 🎉
👍7🎉3
📚 Laravel Feeds приобрёл сразу несколько улучшений в версии 1.8:

- Добавлен фид RSS Atom
- Добавлены пресеты упрощающие создание фидов (Instagram, Yandex, Sitemap, RSS)
- Добавлен Conditionable и Macroable функционал в базовые классы Feed, FeedInfo и FeedItem, расширяющие их возможности.

Среди прочего прибрались по коду да убрали из подсказок Laravel Idea технические классы при использовании в конечном приложении (Transformer светился в частности).
👍4🔥3
Laravel Boost - это мощный инструмент по добавлению инструкций для ИИ агентов и одним из его механизмов является MCP сервер.

В рамках одного приложения всё супер - агенты реально лучше подсказывают.

А что делать тем кто разрабатывает библиотеки? В этом случае начинаются пляски с бубном для внедрения MCP.

И решение есть - глобальная установка MCP сервера Лары.

Всё что для этого нужно - это установить Laravel в какую-нибудь папку с зависимостью Boost и добавить глобальный конфиг.

laravel new mcp

cd mcp

composer require laravel/boost --dev
php artisan boost:install


После этого открываем настройки MCP. Например, для AI Assistant и Junie в PhpStorm (см скрины) и добавляем конфиг с путём к файлам.

Всё. С этих пор MCP сервер будет работать во всех проектах и IDE/Editor будут автоматом цепляться к нему.
👍2
Часто используемые способы взаимодействия с релейшенами Laravel и их улучшение

1) Первый
 Product::query()
- ->with([
- 'attribute' => fn (Builder $query) => $query->select(['id', 'title'])
- ])
- ->whereHas('attribute');
+ ->withWhereHas('attribute:id,title')


2) Второй
 Product::query()
- ->whereHas('attribute', fn (Builder $query) => $query
- ->where('id', $id)
- );
+ ->whereRelation('attribute', 'id', $id)


3) Третий
 Product::query()
- ->with([
- 'attribute' => fn (Builder $query) => $query->select(['id', 'title'])
- ])
- ->whereHas('attribute', fn (Builder $query) => $query
- ->where('id', $id)
- );
+ ->with('attribute:id,title')
+ ->whereRelation('attribute', 'id', $id)
5👍4🔥2
Пых.Конф’25

Это моя первая конференция за всё время и ожидания были услышать несколько полезных идей, а по факту всё что я там услышал, было полезным. Да, что-то давно лично применяю в работе и считаю полезным это рассказывать тем, кто ещё не знает, что и сделали докладчики, а что-то узнал из того, в каком направлении сам начал двигаться.

Получил новый опыт для себя, поделился своим опытом с другими. Запомнился Анатолий с вопросом по утечкам памяти в Laravel Octane 🙂

Было очень круто до, во время и после конференции 😊

Жаль, что всё закончилось очень быстро. В хорошей компании время летит незаметно 🥲

И уже жду следующей конференции 😎

Отдельное спасибо:

— Валентину Удальцову (@vudaltsov) за организацию и проведение столь классного мероприятия

— Александру Черняеву (@tabuna) за книгу «Денди-код»

— Данилу Шуцкому (@leeto_telegram) за мерч MoonShine

— Владимиру Баркаеву (@Muumba) за гостеприимство
2🔥96
💻 Денди-код. Как писать код с аккуратностью, уважением к читателю и стилем

Рабочий код сам по себе не повод для гордости. Его можно написать быстро и наспех. Но код, с которым действительно приятно работать, требует внимания, аккуратности и дисциплины.

Эта книга — краткий и практичный гид по написанию понятного и аккуратного кода на PHP.
Никакой лишней теории, бесконечных споров о стиле или философских рассуждений — только конкретные советы и примеры.

Главный акцент сделан на первом и самом важном шаге к качественному коду — его визуальной читаемости.
В формате cookbook вы найдёте типичные ошибки и удачные альтернативы, которые помогут быстро перенять приёмы и применить их на практике.

Это удобный справочник для тех, кто хочет писать код чище, яснее и понятнее — и для себя, и для коллег.

Купить на Ozon
Купить на Avito
Скачать книгу в PDF
Прочесть книгу на GitHub

Рецензия

Книга читается легко и непринуждённо за счёт её малого объёма. Медленно читающим людям это важно. Читается на одном дыхании. В ней описаны практические подходы, которым, на мой взгляд, должны обучать в основе основ. Вдобавок, книга раскрывает те аспекты разработки, о которых некоторые разработчики могут попросту не знать хотя бы потому что не знают что такое вообще есть и как это гуглить.

В число недостатков внесу малый объём, но именно это также является её преимуществом ибо книга не успевает надоесть.

У меня остались приятные впечатления после прочтения и, получив печатный вариант лично в руки от автора, несомненно прочту её ещё раз.

Да и видеть своё имя в книге безумно приятно 😊
5🔥6❤‍🔥2