Please open Telegram to view this post
VIEW IN TELEGRAM
❤8
Нарешті це сталось!
В документацію Laravel додали сторінку з ченджлогами
https://laravel.com/docs/changelog
В документацію Laravel додали сторінку з ченджлогами
https://laravel.com/docs/changelog
Laravel
Changelog | Laravel 13.x - The clean stack for Artisans and agents
Laravel is a PHP web application framework with expressive, elegant syntax. We've already laid the foundation — freeing you to create without sweating the small things.
🔥6👍1
Є ідея завести нову рубрику на каналі.
Давайте будемо розбирати ваш код. Проводитимемо код-ревʼю ваших проєктів? 🤙
Зі свого боку я зобовʼязуюсь не називати автора за вашим бажанням і давати лише конструктивні коментарі по вашому коду. Матюкати не буду 😁
Надсилайте заявки в особисті! Буде цікаво, а головне корисно всім!
Давайте будемо розбирати ваш код. Проводитимемо код-ревʼю ваших проєктів? 🤙
Зі свого боку я зобовʼязуюсь не називати автора за вашим бажанням і давати лише конструктивні коментарі по вашому коду. Матюкати не буду 😁
Надсилайте заявки в особисті! Буде цікаво, а головне корисно всім!
👍13
Я вирішив розібратись із сучасним станом роботи з Livewire.
І мене певні речі у Livewire v3 дійсно здивували по-хорошому.
Перше, з чим я вирішив розібратись - це підтвердити чи розвінчати міф, що Livewire компоненти спамлять бекенд.
Звідки взявся цей міф?
У Livewire v1–v2 дійсно була така поведінка:
Кожна зміна інпуту (через
Результат: у великих формах або таблицях справді з’являвся "спам" запитів і додаткове навантаження на бекенд.
Як працює Livewire v3 (реальність 2024–2025)
Починаючи з Livewire v3, механізм реактивності став набагато ефективнішим:
1. Лише цільові оновлення
Livewire не оновлює весь компонент - лише ті частини DOM, які реально змінилися, використовуючи "morphdom"-подібний підхід.
Передається мінімальний HTML-патч, а не повна розмітка.
2. Синхронізація стану відкладена
-
-
-
Ти сам контролюєш частоту оновлення.
3. Сервер не "пушить" нічого постійно
Livewire не тримає постійне з’єднання (як WebSocket чи polling), якщо ти сам цього не налаштуєш (
Тобто:
Livewire не створює постійних запитів у фоні.
Кожен запит - це реакція на конкретну дію користувача (клік, зміна інпуту тощо).
4. Wire-події "групуються"
Livewire може "об’єднувати" кілька змін стану в один запит, якщо вони трапляються одночасно.
5. Використання Fetch + кешування
У v3 використовується
Більш детально хочу розповісти у відео, яке вже почав готувати 😉
І мене певні речі у Livewire v3 дійсно здивували по-хорошому.
Перше, з чим я вирішив розібратись - це підтвердити чи розвінчати міф, що Livewire компоненти спамлять бекенд.
Звідки взявся цей міф?
У Livewire v1–v2 дійсно була така поведінка:
Кожна зміна інпуту (через
wire:model) одразу відправляла AJAX-запит на сервер. Не було debounce або defer за замовчуванням, тому навіть швидкий набір тексту міг породжувати десятки запитів на секунду. Також старі версії не використовували оптимізоване "DOM diffing" - кожен запит міг повертати досить великий HTML-фрагмент.Результат: у великих формах або таблицях справді з’являвся "спам" запитів і додаткове навантаження на бекенд.
Як працює Livewire v3 (реальність 2024–2025)
Починаючи з Livewire v3, механізм реактивності став набагато ефективнішим:
1. Лише цільові оновлення
Livewire не оновлює весь компонент - лише ті частини DOM, які реально змінилися, використовуючи "morphdom"-подібний підхід.
Передається мінімальний HTML-патч, а не повна розмітка.
2. Синхронізація стану відкладена
wire:model має режими:-
wire:model.lazy - оновлює стан лише після втрати фокусу.-
wire:model.debounce.500ms - дебаунсить зміни на 0.5 секунди.-
wire:model.defer - синхронізація лише після дії (наприклад, сабміту).Ти сам контролюєш частоту оновлення.
3. Сервер не "пушить" нічого постійно
Livewire не тримає постійне з’єднання (як WebSocket чи polling), якщо ти сам цього не налаштуєш (
wire:poll, наприклад).Тобто:
Livewire не створює постійних запитів у фоні.
Кожен запит - це реакція на конкретну дію користувача (клік, зміна інпуту тощо).
4. Wire-події "групуються"
Livewire може "об’єднувати" кілька змін стану в один запит, якщо вони трапляються одночасно.
5. Використання Fetch + кешування
У v3 використовується
fetch() API з HTTP/2 multiplexing, тому навіть коли запитів кілька - це не проблема для сучасних серверів, бо браузер їх оптимально групує.Більш детально хочу розповісти у відео, яке вже почав готувати 😉
👍11❤3😇1
Як ви, народ? Кияни, як ви?
Сьогодні буду вас трохи питаннями замахувати, ок? 😉
Пʼятниця, не працювати ж...
Сьогодні буду вас трохи питаннями замахувати, ок? 😉
Пʼятниця, не працювати ж...
KRUHLYK 🇺🇦
Є ідея завести нову рубрику на каналі. Давайте будемо розбирати ваш код. Проводитимемо код-ревʼю ваших проєктів? 🤙 Зі свого боку я зобовʼязуюсь не називати автора за вашим бажанням і давати лише конструктивні коментарі по вашому коду. Матюкати не буду 😁…
Отримав першу заявку на розбір проєкту у форматі кор-ревʼю.
Але, такий формат - це або довге відео, або довгий стрім.
І тут дилема: довге відео дивитись не будуть. Треба різати на декілька. Стрім не зробить охоплення аудиторії, якій то було б цікаво... Дилема.
Але, такий формат - це або довге відео, або довгий стрім.
І тут дилема: довге відео дивитись не будуть. Треба різати на декілька. Стрім не зробить охоплення аудиторії, якій то було б цікаво... Дилема.
Питання намбер ту: робити стрім чи оформити відосами?
Anonymous Poll
22%
Стрім
48%
Відоси
30%
І стрім, і відоси 😜
KRUHLYK 🇺🇦
Питання намбер раз: проводимо сьогодні стрімчанський в обід?
Давайте ще півгодинки голосуємо і приймаємо рішення щодо стріму сьогодні
KRUHLYK 🇺🇦
Питання намбер раз: проводимо сьогодні стрімчанський в обід?
Добре, трохи більше половини все ж за стрім, тому сьогодні проведемо невеличкий стрім.
Чекатиму всіх о 14:00 🙂
https://www.youtube.com/watch?v=bVmWzRg1ImE
Чекатиму всіх о 14:00 🙂
https://www.youtube.com/watch?v=bVmWzRg1ImE
YouTube
Чи справиться AI з асинхронністю в Ларці?
Попередні стріми:
Сетапимо проєкт: https://www.youtube.com/live/xdBzMRydZ_o?si=vaVtUXRN2Tc2q6Ab
Junie vs. Cursor: https://www.youtube.com/live/E3IsAXKLKcA?si=gjNlrog4-Ln5H_vb
Як працює JetBrains AI: https://www.youtube.com/live/2bUB91NY09Q?si=PDFxpXG0hIXD6CCW…
Сетапимо проєкт: https://www.youtube.com/live/xdBzMRydZ_o?si=vaVtUXRN2Tc2q6Ab
Junie vs. Cursor: https://www.youtube.com/live/E3IsAXKLKcA?si=gjNlrog4-Ln5H_vb
Як працює JetBrains AI: https://www.youtube.com/live/2bUB91NY09Q?si=PDFxpXG0hIXD6CCW…
1❤2👍1
Media is too big
VIEW IN TELEGRAM
От саме та проблема, яку ми обговорювали в подкасті з паном Микитою. Відносно новоприбулі розробники не розуміють суті інструментів, з якими працюють і не вміють в базу розробки. Просто тому, що їх тому навіть не намагаються вчити.
Всі оті вайтішні курси - інфоциганство, якщо вони вчать лише базовій мові і одному-двум фреймворкам максимум.
А для того, щоб стати дійсно профі і класно конкурувати на ринку, ви маєте розвивати багато різних скілів.
Як це зробити? Один з варіантів - працювати з ментором, якщо такого немає у вас на проєкті чи в команді.
Потрібен ментор або, як каже пан Микита, нянька? Переходь за посиланням!
А якщо ще досі не слухав наш подкаст, то заварюй каву чи чай і приємного перегляду!
Всі оті вайтішні курси - інфоциганство, якщо вони вчать лише базовій мові і одному-двум фреймворкам максимум.
А для того, щоб стати дійсно профі і класно конкурувати на ринку, ви маєте розвивати багато різних скілів.
Як це зробити? Один з варіантів - працювати з ментором, якщо такого немає у вас на проєкті чи в команді.
Потрібен ментор або, як каже пан Микита, нянька? Переходь за посиланням!
А якщо ще досі не слухав наш подкаст, то заварюй каву чи чай і приємного перегляду!
👍5