KRUHLYK 🇺🇦
1.11K subscribers
663 photos
60 videos
5 files
276 links
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Я пушу не протестований код в пʼятницю.

Девопс, який вночі на чергуванні:
🤣14
Media is too big
VIEW IN TELEGRAM
Ну не деплоїти ж сьогодні, правда?😉💪🏻
4👎1
Ну що, понеділок. Час попрацювати! ☕️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19
І знову робочий день. Тримати стрій!
😁13👍1🕊1👨‍💻1
Скоріше оновлюйте Laravel Boost до версії 2.0. Це зекономить вам купу токенів ваших ШІшок!

ПиСи: всі переходять від глобальних гайдлайнів до опису скілів. І… це реально класно працює 😎
🔥42
Попрацював. Пішов я спати. Тихої ночі, колеги!
5😁5
Перше правило продакшн-клубу: нічого не чіпати в п'ятницю
🤝9
#laratip

Валідація пароля: робимо це правильно в Laravel

Багато хто досі перевіряє поточний пароль вручну в контролері через Hash::check. Я дуже часто це бачу у ваших кодових базах, коли ми працюємо на менторських програмах. Це легасі-підхід, який роздуває код. На скріні — чистий спосіб через Form Request.

Що тут відбувається:

current_password: вбудоване правило Laravel. Воно автоматично звіряє введене значення з хешем пароля автентифікованого користувача. Більше ніяких ручних перевірок.

confirmed: стандарт, що вимагає наявності поля new_password_confirmation. Позбавляє від помилок при вводі нового пароля.

different:current_password: маст-хев для UX та безпеки. Не даємо юзеру змінити пароль на той самий, що вже встановлений.

unique:users,email: перевірка унікальності імейла. Але зверни увагу: якщо це оновлення профілю, тут бракує ігнорування поточного ID користувача, інакше валідація впаде на "email вже зайнятий".

Senior-порада:

Якщо ви використовуєте Clean Architecture або DDD, не затягуйте логіку Hash::make() у валідатор. Валідатор лише перевіряє вхідні дані. Сама ж операція хешування та збереження має жити в Action-класі або Domain Service.

Для проектів з високим навантаженням на БД, правило unique краще доповнити unique:users,email,'.auth()->id(), щоб валідатор знав, що ми оновлюємо саме цей запис.
🔥5👍1👏1
Що ж, понеділок знову увірвався коли його не очікуєш і знову без світла на дового 🙄

І тут нам батя Тейлор анонсував, що нам треба переставати звикати до властивостей в класах Laravel і переповзати на використання атрибутів.
При тому, залишається зворотна сумісність з використанням властивостей.

І знаєте що? Мені таке дуже подобається. На мою скромну думку, код з використанням атрибутів стає більш читабельним та передбачуваним. PHP все біль більше стає дорослою, зрілою мовою з сімейства C.

А якої думки ви з цього питання, пишіть в коментарях! Гарного понеділка та смачної кави!

https://github.com/laravel/framework/pull/58578
👍10🔥2🕊1
Може хтось шукає проєкт чи може порекомендувати?
👍2
Forwarded from houkotosayame
В мене один з ейчарів просить дати рекомендацію на пхп розробника рівня сеньйор, можливо комусь потрібно в чаті
Не святкую. Цейво, степлєр.
🔥93
NativePHP for Mobile став частково безкоштовним.

Це змінює правила гри для PHP-ком'юніті. Якщо раніше це була закрита історія, то тепер Core і критично важливі плагіни перевели під ліцензію MIT. Фактично, поріг входу в мобільну розробку на Laravel знизився до нуля.

Деталі оновлення:

- Essential-плагіни (Free):
У базу включили все необхідне для типової CRUD-апки або клієнтського інтерфейсу: доступ до камери, файлової системи, мікрофону, мережі, системних діалогів та шерингу. Тобто 80% типових задач закриваються безкоштовно.
- Premium-плагіни (One-time purchase):
Специфічні фічі винесли в платний сегмент. Це біометрія (FaceID/TouchID), геолокація, пуш-сповіщення, сканер кодів та Secure Storage. Важливо, що це не підписка, а разова покупка. Для комерційного проєкту — копійки, для пет-проєкту — можна обійтися базою.
- Developer Experience (DX):
Тут найцікавіше — інструмент Jump. Це компаньйон-застосунок, який дозволяє тестувати код на реальному iOS/Android пристрої без необхідності компілювати білди.

Запускаєш php artisan native:jump — і маєш лайв-прев'ю. Ті, хто хоч раз налаштовував оточення для React Native або Flutter, зрозуміють, скільки болю це знімає на старті.

Архітектурно це все ще обгортка, але з такою інтеграцією в екосистему Laravel (Events, Queues, Eloquent) це виглядає як найбільш "нативний" спосіб для PHP-розробника зробити мобільний додаток, не вивчаючи Swift чи Kotlin.
🔥12
З пʼятницею!
😁10👍4🍾1
Коли замовник хоче AI-агента навіть у лендос для продажу шкарпеток...

В часи, коли бізнес вимагає впихнути "штучний інтелект" у кожну дірку (і бажано "на вчора"), ми отримали справжній рятівний круг.

Вийшла бета Laravel AI SDK! І це саме той інструмент, який перетворює хаос інтеграцій на елегантний код.

Замість того, щоб писати милиці під кожен API і винаходити велосипед щоразу, коли клієнт змінює думку щодо провайдера, ловіть офіційний пакет.

Що під капотом?

Агенти із суперздібностями.
Створюй агентів, які мають доступ до інструментів (tools), пам'яті та вміють віддавати структуровані дані. Все це зі стрімінгом і вбудованими моками для тестів (тестування AI — це окремий біль, але тут про нас подбали).

Один інтерфейс — всі провайдери
Anthropic, Gemini, OpenAI, ElevenLabs... Треба змінити модель? Це один рядок коду. А розумні фоллбеки (fallbacks) підстрахують, якщо API умовного OpenAI вирішить прилягти відпочити.

Нативно для Laravel
Фасади, черги, конфіги, Artisan-команди. Ніяких чужорідних абстракцій — все в стилі фреймворку. Працювати з цим — одне задоволення.

All-inclusive
Це не просто "чат-бот". Це текст, генерація зображень, аудіо, транскрипція, ембеддінги, реранкінг, векторні сховища і навіть веб-пошук.

Дока тут: https://laravel.com/docs/12.x/ai-sdk

Словом, мастхев. Час пиляти своїх агентів правильно, а не на колінці.
🔥11
А взагалі, давайте вже по трошку готуватися до наступного релізу ларки. Тут непальські колеги зробили цікавий проєкт.

Давайте згадаємо (або скоріше дізнаємося) якою була Laravel 1. І порівняємо з поточною реалізацію і подумаємо про те як цей фреймворк еволюціонував за ці роки.

https://laravelnepal.com/post/origin-of-laravel-v1
Ну шо, ніщєброди, погнали будемо софтверити чи шо? Понеділок.
😁10
Робота в ІТ: я тупий, я розумний, а ні - тупий, ого я розумний, я тупий.
💯21😁5
KRUHLYK 🇺🇦
Коли замовник хоче AI-агента навіть у лендос для продажу шкарпеток... В часи, коли бізнес вимагає впихнути "штучний інтелект" у кожну дірку (і бажано "на вчора"), ми отримали справжній рятівний круг. Вийшла бета Laravel AI SDK! І це саме той інструмент,…
Почав трохи колупати цю шайтан SDK.

І ось основний інсайт:
Learn to work with Laravel QUEUES first.

Серйозно, не наступайте на граблі синхронних запитів. AI - це не той звичний старий воркфлоу Eloquent query за 2мс. Це 10-20 секунд очікування на генерацію картинки або "важкого" промпту.

Якщо не хочете, щоб ваш юзер дивився на білий екран, поки тайм-аут Nginx не скаже «дасвіданя» - заганяйте все у черги.

Failures? Будуть. І retryUntil - ваш найкращий друг.

UX? Тільки асинхронщина + WebSockets/Reverb, щоб юзер бачив прогрес у реальному часі.

Graceful handling? Обов'язково.

Спочатку навчіться «готувати» Redis та Workers, а вже потім випускайте AI-агентів на волю. Чистий код - це не тільки про SOLID, а й про те, щоб бекенд не вмирав, поки Claude думає над сенсом життя.
👌8🥰1