#Laravel Tip
Автоматическое удаление записей из коробки🪄
Иногда нужно автоматически удалять устаревшие записи из базы данных. Многие для этого пишут собственные Artisan-команды и настраивают cron-задачи.
В Laravel для таких случаев уже есть готовое решение — трейт
Достаточно определить условие, какие записи считаются устаревшими:
После этого Laravel сможет автоматически находить и удалять подходящие записи через команду:
Можно добавить её в планировщик задач и больше не думать об очистке старых данных.
Меньше кастомного кода. Меньше поддержки. Больше встроенных возможностей Laravel.
@WebDev_Plus
Автоматическое удаление записей из коробки
Иногда нужно автоматически удалять устаревшие записи из базы данных. Многие для этого пишут собственные Artisan-команды и настраивают cron-задачи.
В Laravel для таких случаев уже есть готовое решение — трейт
Prunable.Достаточно определить условие, какие записи считаются устаревшими:
use Illuminate\Database\Eloquent\Prunable;
class Flight extends Model
{
use Prunable;
public function prunable(): Builder
{
return static::where('created_at', '<=', now()->subMonth());
}
}
После этого Laravel сможет автоматически находить и удалять подходящие записи через команду:
php artisan model:prune
Можно добавить её в планировщик задач и больше не думать об очистке старых данных.
Меньше кастомного кода. Меньше поддержки. Больше встроенных возможностей Laravel.
@WebDev_Plus
Please open Telegram to view this post
VIEW IN TELEGRAM
Если хотите, чтобы Claude нормально делал вам слайды, не используйте Claude Design.
Используйте Reveal.js. - https://github.com/hakimel/reveal.js
Пусть Claude генерирует презентации как обычные HTML + Markdown-файлы.
Это намного приятнее:
→ слайды лежат в коде
→ их легко редактировать
→ можно хранить в Git
→ можно версионировать
→ можно быстро менять структуру
→ можно деплоить как обычную веб-страницу
Вместо того чтобы возиться с визуальным редактором, вы просто описываете, какую презентацию хотите получить, а Claude собирает её как фронтенд-проект.
Для разработчиков это ощущается естественнее.
Слайды становятся не «файлом презентации», а частью нормального рабочего процесса.
@WebDev_Plus
Используйте Reveal.js. - https://github.com/hakimel/reveal.js
Пусть Claude генерирует презентации как обычные HTML + Markdown-файлы.
Это намного приятнее:
→ слайды лежат в коде
→ их легко редактировать
→ можно хранить в Git
→ можно версионировать
→ можно быстро менять структуру
→ можно деплоить как обычную веб-страницу
Вместо того чтобы возиться с визуальным редактором, вы просто описываете, какую презентацию хотите получить, а Claude собирает её как фронтенд-проект.
Для разработчиков это ощущается естественнее.
Слайды становятся не «файлом презентации», а частью нормального рабочего процесса.
@WebDev_Plus
Открой X.
Выполни этот JavaScript в консоли браузера:
Наслаждайся.
@WebDev_Plus
Выполни этот JavaScript в консоли браузера:
s = document.createElement("style");
s.innerHTML = "*{font-family:comic sans ms!important}";
document.head.append(s);Наслаждайся.
@WebDev_Plus
😁4
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Design Engineering Tip
Попробуйте делать
Так пользователю проще писать длинный текст, а форму легче просматривать целиком.
CSS:
Маленькая деталь, но UX сразу становится приятнее.
@WebDev_Plus
Попробуйте делать
textarea, которая растёт вместе с контентом, вместо вложенного скролла внутри поля.Так пользователю проще писать длинный текст, а форму легче просматривать целиком.
CSS:
textarea {
field-sizing: content;
}Маленькая деталь, но UX сразу становится приятнее.
@WebDev_Plus
👍2
Кейс большой frontend-миграции от ВКонтакте. Команда перевела ключевые разделы vk.com на SPA. В итоге получили ускорение первой отрисовки страницы на 25% и ускорение среднего времени перехода между разделами в 3,5 раза.
Переход был плавным: снаружи все привычно, внутри — новая платформа
https://www.cnews.ru/news/line/2026-06-03_vkontakte_obnovila_veb-platformu
@WebDev_Plus
Переход был плавным: снаружи все привычно, внутри — новая платформа
https://www.cnews.ru/news/line/2026-06-03_vkontakte_obnovila_veb-platformu
@WebDev_Plus
😁2
Мой набор JavaScript-библиотек, без которых уже сложно представить разработку:
🛡 zod → валидация схем и типобезопасная проверка данных
📅 date-fns → работа с датами без боли и лишнего веса
📊 tanstack-table → мощные и гибкие таблицы для React
🔐 better-auth → аутентификация пользователей без лишней возни
🎞 motion → анимации на JavaScript с современным API
🔤 fontsource → подключение веб-шрифтов прямо через npm
📈 chart.js → доступные и удобные HTML5-графики
🐻 zustand → простое глобальное управление состоянием
🖱 pragmatic-drag-and-drop → drag-and-drop от команды Atlassian
⌨️ hotkeys-js → горячие клавиши и клавиатурные шорткаты
@WebDev_Plus
🛡 zod → валидация схем и типобезопасная проверка данных
📅 date-fns → работа с датами без боли и лишнего веса
📊 tanstack-table → мощные и гибкие таблицы для React
🔐 better-auth → аутентификация пользователей без лишней возни
🎞 motion → анимации на JavaScript с современным API
🔤 fontsource → подключение веб-шрифтов прямо через npm
📈 chart.js → доступные и удобные HTML5-графики
🐻 zustand → простое глобальное управление состоянием
🖱 pragmatic-drag-and-drop → drag-and-drop от команды Atlassian
⌨️ hotkeys-js → горячие клавиши и клавиатурные шорткаты
@WebDev_Plus
This media is not supported in your browser
VIEW IN TELEGRAM
Наткнулся на очень годный File Tree-компонент 🌳
Trees — open-source файловое дерево для приложений, которым нужен проводник уровня IDE.
Из коробки есть:
• поиск по файлам
• drag-and-drop
• выделение файлов и папок
• Git-статусы
• горячие клавиши
• всё, что обычно ожидаешь от нормального файлового проводника
Подходит для редакторов кода, девтулзов, файловых менеджеров и любых приложений, где нужно современное дерево файлов.
Выглядит настолько отполированным, будто его вытащили из готовой IDE, а не из очередного npm-пакета.
@WebDev_Plus
Trees — open-source файловое дерево для приложений, которым нужен проводник уровня IDE.
Из коробки есть:
• поиск по файлам
• drag-and-drop
• выделение файлов и папок
• Git-статусы
• горячие клавиши
• всё, что обычно ожидаешь от нормального файлового проводника
Подходит для редакторов кода, девтулзов, файловых менеджеров и любых приложений, где нужно современное дерево файлов.
Выглядит настолько отполированным, будто его вытащили из готовой IDE, а не из очередного npm-пакета.
@WebDev_Plus
Please open Telegram to view this post
VIEW IN TELEGRAM
Кратко:
• Rust-версия компилятора выдаёт результат, который на 99.9% совпадает с оригинальной реализацией
• Команда уверена в стабильности и планирует влить PR в ближайшие недели
• Уже можно тестировать локально
• Команда Oxc уже работает над интеграцией, есть черновик PR
Похоже, React Compiler скоро получит полноценную Rust-реализацию, что может ускорить сборку и упростить интеграцию с современной экосистемой JavaScript-инструментов.
@WebDev_Plus
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Chrome 149 вышел, и в нём наконец-то появилась одна из самых ожидаемых CSS-фич.
Теперь можно стилизовать промежутки (gaps) в CSS Grid и Flexbox.
Это значит, что многие макеты, которые раньше требовали лишних обёрток, псевдоэлементов или хитрых костылей, теперь можно собрать чистым CSS.
Например, внешний вид календаря теперь легко реализуется через CSS Grid с оформленными промежутками между ячейками.
Автор подготовил статью на ICS MEDIA, где разбирает новую возможность, а также приложил демо и исходный код.
Очередной небольшой CSS-апдейт, который убирает ещё один класс фронтенд-костылей.
@WebDev_Plus
Теперь можно стилизовать промежутки (gaps) в CSS Grid и Flexbox.
Это значит, что многие макеты, которые раньше требовали лишних обёрток, псевдоэлементов или хитрых костылей, теперь можно собрать чистым CSS.
Например, внешний вид календаря теперь легко реализуется через CSS Grid с оформленными промежутками между ячейками.
Автор подготовил статью на ICS MEDIA, где разбирает новую возможность, а также приложил демо и исходный код.
Очередной небольшой CSS-апдейт, который убирает ещё один класс фронтенд-костылей.
@WebDev_Plus