28143
🚀 Статьи, новости, туториалы по frontend разработке. http://jem-space.ru Admin: @jem_jem Пишу в @five_a_m Читать на парковке: https://max.ru/front_end_dev Реклама: http://bit.ly/2NxmVDu РКН: https://clck.ru/3GLw7G
Как измерить рост производительности команды от внедрения ИИ. Бесплатный урок курса «Руководитель команд в ИТ»
ИИ внедряют почти все, но далеко не все понимают, стал ли от этого процесс лучше. Команда может активнее пользоваться новыми инструментами, а расходы на лицензии могут расти, но главный вопрос остаётся открытым: действительно ли выросла производительность, сократилось ли время работы и появился ли экономический эффект.
На открытом уроке 3 июня в 20:00 разберём, как руководителю команды подходить к внедрению ИИ не на уровне ощущений, а через измеримые показатели. Поговорим об условиях успешного внедрения, способах оценки производительности команды, поиске эффекта именно от ИИ, а не от случайных факторов, и расчёте экономической эффективности. Отдельно обсудим, какие требования стоит выполнить до внедрения, чтобы потом не гадать, помог ИИ или просто добавил ещё один слой инструментов.
Урок не для тех, кто внедряет ИИ «потому что все так делают», не готов считать эффект и хочет заменить управленческие решения покупкой новых лицензий.
👉 Записаться: https://otus.pw/EVZS/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Диапазоны медиа-запросов CSS
Range queries в CSS 4 делают адаптивные стили читаемыми и предсказуемыми: вместо ловушек с одинаковыми breakpoints используйте выражения вида 300px <= width <= 500px и ускоряйте отладку ваших макетов.
https://ishadeed.com/article/range-syntax/
Как собрать кубик Рубика в браузере на чистом Canvas
Пошаговый туториал по созданию 3D кубика на Canvas без Three.js: от проекции и вращения граней до перехода к полноценной интерактивной симуляции, которую можно крутить прямо в браузере.
https://habr.com/ru/companies/ruvds/articles/1035748
Компонентная библиотека под ваш проект
Доступные компоненты для Astro и Tailwind CSS, которые добавляются через CLI и остаются под вашим контролем. Быстрый старт с npx bearnie init и дальнейшая настройка, расширение и сборка своей библиотеки.
https://bearnie.dev/
Внутри нового фронтенда MDN
Пересобрали фронтенд MDN: упростили дизайн и переработали кодовую базу, чтобы уменьшить технический долг и улучшить поддержку интерактивных элементов без тяжелой клиентской логики. Разбираем архитектуру сборки из Markdown в JSON и SSR, а также причины отказа от React-обертки и проблем с CSS и поддерживаемостью.
https://developer.mozilla.org/en-US/blog/mdn-front-end-deep-dive/
Митапы — это, конечно, круто и полезно. Но что может быть лучше открытой дискуссии с коллегами о наболевшем? ☑️
AvitoTech тут зовёт на классный ивент для фронтендеров. Обещают полтора часа дискуссий на самые разные темы: от роста фронтенд-инженера в тимлида до ванильного JS. И вишенка на торте — афтерпати на веранде ☄️
Всё пройдёт вечером 19 мая, так что погода не должна подкачать. Регистрация, кстати, по ссылке.
Baseline март 2026: 12 браузерных фич, которые уже можно брать в прод
В марте 2026 появилось много Widely available возможностей, включая Clear-Site-Data для управляемого сброса кэша и хранилищ, а также новые CSS и WebAPI.
https://habr.com/ru/articles/1018200/
Автогенерация skeleton экранов из реального UI
Boneyard автоматически снимает разметку и генерирует pixel-perfect скелеты без ручных замеров и подгонок, поддерживает React, Vue, Svelte 5, Angular, Preact и React Native. Используйте CLI или Vite plugin, а затем подключайте registry для быстрых и консистентных загрузочных состояний.
https://github.com/0xGF/boneyard
HTML в canvas: рисуем и компонуем DOM с доступностью
Предложение к использованию <canvas>, которое добавляет примитивы для layoutsubtree, drawElementImage и paint event, чтобы корректно рендерить дочерние HTML элементы в 2D и 3D canvas с согласованным fallback и hit testing. Идея закрывает боль с качеством, доступностью и экспортом контента, а также открывает путь к эффектам через WebGL/WebGPU.
https://github.com/WICG/html-in-canvas
CSS subgrid для выравнивания контента из CMS без костылей
Subgrid позволяет наследовать сетку родителя и легко расширять фон и блоки на всю ширину или возвращать их обратно в основной столбец, сохраняя точное выравнивание текста. Это упрощает сложные макеты с вложенными блоками и делает верстку предсказуемой.
https://dbushell.com/2026/04/02/css-subgrid-is-super-good/
Формы в Angular: от Reactive Forms к Signal Forms
Signal Forms в Angular v21 дают новый способ управления состоянием формы через сигналы, уменьшая шаблонную и компонентную разрозненность. Разберем, как мигрировать подход от FormGroup и FormArray к более предсказуемой модели и что это меняет в валидации и работе с динамическими полями.
https://habr.com/ru/companies/domclick/articles/1018180/?utm_campaign=1018180&utm_source=habrahabr&utm_medium=rss
Делаем эмодзи и иконки доступными для скринридеров
Эмодзи и иконки в коде часто не являются настоящими изображениями, поэтому скринридер читает их буквальные названия или не находит текста. Добавляйте текстовые альтернативы, подписывайте icon-only элементы и контролируйте, чтобы смысл не терялся без визуального контекста.
https://blog.pope.tech/2026/04/01/making-emojis-and-icons-screen-reader-accessible/
7 рецептов для View Transitions в CSS
Собрали готовые шаблоны анимаций для плавных переходов между страницами: от простого dissolve до более выразительных эффектов. Подходит как для практики, так и для быстрого внедрения в веб приложения с учетом prefers-reduced-motion.
https://css-tricks.com/7-view-transitions-recipes-to-try/
Поддержка Solid 2.0 beta в TanStack Router, Start и Query
Solid 2.0 beta: асинхронный рендер, derived state и SSR получили новые паттерны, а TanStack Router, Start и Query остаются совместимыми. Достаточно обновить зависимости и, при необходимости, добавить solid-query, чтобы сразу получить роутинг, загрузочные состояния и data fetching в одном стеке.
https://tanstack.com/blog/tanstack-start-solid-v2
Name-only контейнеры в CSS для безопасного scoped стиля
Name-only контейнеры позволяют ограничивать область действия стилей по имени без условий, решая конфликт классов в больших дизайн системах и многолетних проектах. Это ближе к тому, что дают CSS modules и scoped styles в компонентах, но с поддержкой на уровне веб платформы.
https://frontendmasters.com/blog/name-only-containers-the-scoping-we-needed/
Конец эпохи responsive images: value auto для sizes
Атрибут sizes с auto делает разметку адаптивных изображений заметно проще и убирает главный источник боли при подборе значений, а пользователи получают более незаметную и потенциально более быструю загрузку.
https://piccalil.li/blog/the-end-of-responsive-images/
GemShell: превращаем HTML5 игры в нативные приложения
Портируйте HTML5 игры в нативные без потерь. Подходит для фронтенд разработчиков, которые хотят выпускать web проекты как полноценные приложения.
https://gemshell.dev
33 ключевых концепта JavaScript для глубокого понимания
Пошаговый гайд по JavaScript core с примерами, диаграммами и проверками знаний: от scope и closures до event loop, async и DOM. Подходит для прокачки знаний и подготовки к интервью, плюс есть удобная документации.
https://33jsconcepts.com/
WebSocket и SSE просто для собеседований и не только
Разбираем, чем отличаются двусторонний WebSocket и однонаправленный SSE, как устроены их рукопожатия и как правильно открывать соединения в браузере. Коротко разложено по событиям, отправке данных и обработке обрывов, чтобы уверенно отвечать на вопросы на интервью.
https://habr.com/ru/articles/1021414/
Ленивая загрузка видео и аудио в HTML уже стандарт
Ленивая загрузка в HTML для видео и аудио стала доступной через loading=lazy и помогает откладывать скачивание медиа до момента появления в вьюпорте. Разберем практики вроде poster, autoplay и сохранения размеров через width height или aspect-ratio, чтобы избежать layout shift и лишнего трафика.
https://engineering.squarespace.com/blog/2026/how-to-use-standard-html-video-and-audio-lazy-loading-on-the-web-today
Google начнет наказывать за back button hijacking
С 15 июня 2026 сайты, которые перехватывают кнопку назад и ломают ожидаемую навигацию, попадут под спам-действия или автоматические понижения в выдаче. Проверьте скрипты, библиотеки и рекламные интеграции, которые могут подменять историю браузера и отправлять пользователя на непосещенные или навязанные страницы.
https://developers.google.com/search/blog/2026/04/back-button-hijacking
Скринридеры это не тестовый инструмент для проверки WCAG
Скринридеры помогают понять опыт пользователя, но из за особенностей навигации и имитации кликов они могут скрывать проблемы и давать ложное ощущение готовности. Для аудита WCAG используйте их как часть проверки, а не как единственный инструмент, и не перегружайте интерфейс избыточными подсказками.
https://yatil.net/blog/screen-readers-are-not-testing-tools
Создаем WCAG доступный DatePicker в React
Разбираем, как собрать DatePicker по паттерну WAI-ARIA APG Date Picker Dialog: корректные роли и aria, roving tabindex, фокус ловушка, полная клавиатурная навигация и календарная сетка. Плюс практичные требования WCAG 2.1/2.2 Level AA, контрастность и обработка disabled дат без лишних зависимостей.
https://habr.com/ru/articles/1022918/
SSGOI: нативные переходы между страницами как в приложении
SSGOI добавляет плавные переходы с поддержкой React, Next, Vue, Nuxt, Svelte и Angular, работая с любым роутингом. Есть готовые типы переходов и быстрая настройка через обёртки вокруг layout и страниц.
https://github.com/meursyphus/ssgoi
Чем заменить !important в CSS
Каскадные слои, грамотный порядок подключений, трюки с селекторами и работа с специфичностью помогают убрать !important и вернуть предсказуемость стилей в больших проектах.
https://css-tricks.com/alternatives-to-the-important-keyword/
Безопасная загрузка файлов в Node.js
Решение для защиты загрузки файлов в бэкенде: валидация, ограничения и снижение рисков вроде вредоносного контента и переполнений. Подходит для веб приложений, где важны надежность и контроль входящих данных.
github.com/pompelmi/pompelmi
Что знать в JavaScript к 2026 году
Обновления ECMAScript 2025, ленивые Iterator Helpers для экономии памяти, методы для Set и RegExp.escape для безопасной сборки регулярных выражений из пользовательского ввода. В фокусе не только язык, но и то, как это применять в рантаймах, фреймворках, библиотеках и туллинге.
https://frontendmasters.com/blog/what-to-know-in-javascript-2026-edition/
SVGInject: внедряйте SVG inline в DOM без сборки
Небольшая библиотека заменяет img на inline svg, чтобы стилизовать любые path, circle и group через CSS, включая анимации и темную тему. Поддерживает кэширование, предотвращает конфликты ID и автоматически улучшает доступность через ARIA.
https://github.com/iconfu/svg-inject
Syncpack для монорепозитория: единые версии зависимостей без рассинхрона
Syncpack помогает находить и фиксить расхождения версий в больших JavaScript монорепах, а также задавать правила для точных и loose semver диапазонов. Можно принудительно держать одну версию, банить нежелательные пакеты и автоматически обновлять зависимости, сохраняя консистентность package.json.
https://syncpack.dev/
Pretext — библиотека, которая считает текстовую вёрстку в 500 раз быстрее браузера. Зачем это нужно и как работает
28 марта 2026 инженер Midjourney Cheng Lou выложил в открытый доступ движок текстовой верстки Pretext на чистом TypeScript, который обходит DOM и layout reflow. Это ускоряет сценарии с постоянными пересчётами высоты текста — от AI-стриминга до виртуализации списков.
https://habr.com/ru/articles/1020058/