WebDev+ | Веб-разработка
8.06K subscribers
590 photos
276 videos
10 files
774 links
Присоединяйтесь к нашему каналу и погрузитесь в мир веб-разработки

Связь: @devmangx
Download Telegram
Если сайт загружается слишком долго, велика вероятность, что пользователь просто уйдёт.

Чтобы ускорить загрузку, Алекс собрал отдельное руководство.

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

https://freecodecamp.org/news/speed-up-website-loading/
Please open Telegram to view this post
VIEW IN TELEGRAM
В браузерах есть нативный API Speculation Rules, который позволяет написать примерно такое правило — и браузер заранее загрузит все ссылки на странице.

#javascript #webdev
This media is not supported in your browser
VIEW IN TELEGRAM
Отправьте это любому разработчику, который пользуется Claude Code или Codex.

Уже можно создать своего цифрового двойника, который будет координировать агентов с кодом, пока вы наблюдаете за их работой в симуляции в стиле «Офиса».

Проект называется Munder Difflin.

Он полностью бесплатный и открытый, работает локально и не отправляет данные наружу.

Можно самому оставаться «начальником» и управлять агентами, а можно оставить вместо себя цифрового двойника, который будет распределять задачи и следить за их выполнением.

Репозиторий и ссылка.
CSS наконец-то позволяет анимировать элементы прямо в момент их первого появления.

Для этого появился @starting-style, который уже поддерживается примерно у 90% пользователей.

Раньше переходы не срабатывали при первом применении стилей к элементу, поэтому приходилось городить обходные решения на JavaScript.

Теперь начальное состояние можно задать прямо в CSS.

.card {
opacity: 1;
transform: translateY(0);
transition: 0.3s;
}

@starting-style {
.card {
opacity: 0;
transform: translateY(20px);
}
}


Элемент сразу появляется с нормальной анимацией, без дополнительного JavaScript.

Мелочь, которую CSS должен был уметь уже очень давно.
Новая статья про flex-wrap: balance.

Автор разобрал flex-wrap: balance и flex-line-count и показал, как с их помощью лучше распределять элементы по строкам во Flexbox.

Самое интересное — он даже собрал masonry-разметку, объединив flex-line-count, round, clamp и единицы контейнерных запросов.

https://ishadeed.com/article/flex-wrap-balance/
This media is not supported in your browser
VIEW IN TELEGRAM
Это вообще не должно быть бесплатным.

Можно собрать собственного аватара прямо в браузере, а потом экспортировать его в SVG, PNG или даже анимированный GIF.

Сохраняйте.

https://oneworks.cloud/avatar
Совет по Laravel.

Знали, что в Laravel есть класс Benchmark, который позволяет измерить время выполнения практически любой задачи?
Событие unload умирает 😵

Chrome отключает его по умолчанию. Edge идёт по тому же пути.

Начиная с Chrome 154, который выйдет в конце сентября 2026 года, обработчики unload перестанут срабатывать, если сайт явно не включит их обратно.

Причина простая. unload ненадёжен, особенно на мобильных устройствах, а даже сама регистрация обработчика может мешать работе кэша переходов назад и вперёд.
HTML только что отобрал у JavaScript ещё одну работу.

command и commandfor входят в Baseline с декабря 2025 года.

Раньше, чтобы открыть диалоговое окно, нужно было писать addEventListener и вызывать showModal().

Теперь это можно сделать прямо в HTML.
На Stepik вышла программа «DevOps с нуля: от Linux до Kubernetes»

Это комплексная программа из 5 практических курсов по ключевым технологиям DevOps: Linux, Git, Docker, GitLab CI/CD, Kubernetes

Вы последовательно пройдёте путь от работы в Linux и управления кодом через Git до контейнеризации приложений, настройки CI/CD-пайплайнов и развёртывания в Kubernetes.

Что вы изучите:
• работу с Linux и командной строкой
• Git и контроль версий в реальных проектах
• создание Docker-образов и запуск контейнеров
• автоматизацию сборки, тестирования и деплоя в GitLab CI/CD
• развёртывание и управление приложениями в Kubernetes
• сети, хранилища, конфигурации и секреты
• диагностику инфраструктуры и автоматизацию рутинных задач
... и многое другое

Все знания закрепляются на практике с помощью заданий с автопроверкой.

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

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

Скидка 20% на 48 часов: по промокоду PORTAL20 стоимость всей программы составит 10 392 ₽.

Открыть программу на Stepik
This media is not supported in your browser
VIEW IN TELEGRAM
Проект с открытым исходным кодом превращает любую LLM в 3D-персонажа, который разговаривает, двигается и реагирует прямо в браузере. Без игрового движка и без локальной настройки рендеринга.

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

Всё можно настраивать под себя: менять 3D-модель, промпт личности, LLM или провайдера синтеза речи.

Попробовать можно бесплатно и без настройки. В размещённой версии для старта дают бесплатный доступ к API. Для самостоятельного развёртывания понадобятся собственные API-ключи, зато вы получаете полный контроль и можете изменять проект как угодно.

Проект создан командой Digital Life Project, представленного на CVPR 2024 и SIGGRAPH Asia 2025.

Полностью бесплатно. Открытый исходный код.
CEO увольняет разработчиков, чтобы заменить их ИИ.

Разработчики уходят… и выкладывают в открытый доступ CEO.

Проект называется OpenExecutive и состоит из 8 агентов Claude.

✓ Стратегия, финансы, юристы, HR, операционная работа, маркетинг и другие направления
✓ Использует FastAPI + Next.js

https://github.com/SenteLabsAI/OpenExecutive
Совет по Laravel — фильтрация по связи без whereHas().

Нужно получить только те посты, у которых автор активен?

Для этого можно использовать whereRelation() и отфильтровать родительские модели одной понятной строкой.

Такой код обычно получается короче и читается проще, чем вариант через whereHas().

Можно пойти ещё глубже.

Для вложенных связей Laravel поддерживает точечную запись в запросах на проверку существования связанных моделей.

Например , как на 2 скрине.
Жёсткое заявление:

«ИИ не смог бы написать компилятор TypeScript. Он не может. Мы пробовали».

— Андерс Хейлсберг
Библиотеки JS, без которых я уже не могу жить:

🛡 zod → валидация
📅 Temporal → даты
📊 tanstack-table → таблицы
🔐 better-auth → авторизация
🎞 motion → анимации
🔤 fontsource → шрифты
📈 chart.js → графики
🐻 zustand → глобальное состояние
🖱 pragmatic-drag-and-drop → перетаскивание
🧭 nuqs → состояние в URL