Еженедельный дайджест #66: Новости фронтенда
Как читать этот дайджест
- Начните с заголовков статей, чтобы получить общее представление о содержании
- Быстро пробегитесь по первым абзацам, чтобы понять актуальность материалов именно для вас
- Выберите наиболее интересные или полезные темы под текущие задачи
- Планируйте чтение: выделите, например, 15 минут утром и 15 минут вечером
- Не пытайтесь прочитать всё сразу — возвращайтесь к дайджесту в удобное время
- При повторном просмотре читайте выбранные статьи более вдумчиво, делая заметки
- Не сожалейте, если прочитали лишь часть: ценность в качестве, а не в количестве
- Используйте закладки для сохранения интересных материалов
- Делитесь инсайтами и ссылками с коллегами — так информация лучше усвоится

🧪 HTML и Платформа
Cloudflare открыла набор данных о реальной скорости сайтов
Cloudflare собрала в BigQuery обезличенные показатели Core Web Vitals с 10 000 крупных сайтов. Данные обновляются ежедневно и учитывают не только Chrome, но и Safari/WebKit. Это удобная точка отсчёта для производительности: например, исследование показывает, что задержка LCP чаще связана не с загрузкой файла, а с тем, что происходит на странице до его показа.
Chrome 155 получил поддержку JPEG XL
В Chrome 155 появилась поддержка JPEG XL — формата изображений .jxl, который умеет давать более компактные файлы, HDR и современные возможности сжатия. Для веба это ещё один вариант доставки тяжёлой графики; заметки к релизу помогут проверить остальные изменения браузера.
- Открыт опрос State of HTML 2026 о формах, веб-компонентах и API браузера. Его результаты используют команды браузеров при планировании развития платформы.
- У зарезервированного домена
example.comпоявился новый дизайн и многоязычный JavaScript. Историю и причины такого необычного обновления сайта разобрали отдельно, как и ответ IANA на вопрос о его назначении. - Rachel Andrew собрала сентябрьские изменения веб-платформы:
progress(),alpha()иrevert-ruleстали доступны во всех основных браузерах. - Одиннадцатый опрос пользователей экранных читалок WebAIM собрал 1 780 ответов. Он показывает, какими программами люди пользуются на практике и почему доступность нужно проверять не только автоматическими тестами.
- SVG 2 приблизился к статусу рекомендации W3C: обновлённая Candidate Recommendation сосредоточена на одинаковом поведении в браузерах.
- В исследовании медленных сайтов авиакомпаний по реальным пользовательским метрикам около 95% участников не прошли Core Web Vitals на мобильных устройствах. Это наглядный повод измерять производительность на настоящих устройствах и сетях.
- Статья «Почему разработчики не используют возможности платформы?» предлагает перед новой библиотекой проверить, нельзя ли решить задачу уже существующими HTML, CSS и Browser API.
- Руководство по двунаправленному тексту объясняет, почему смешение языков с разным направлением письма ломает интерфейсы и как учитывать это в разметке.
- Интерактивное объяснение passkey показывает, как вход без пароля связывает устройство, сайт и криптографические ключи.
🎨 CSS и дизайн
CSS Anchor Positioning берёт на себя позиционирование подсказок
CSS Anchor Positioning позволяет привязать tooltip или выпадающее меню к элементу через anchor-name и position-anchor. Браузер сохраняет связь при прокрутке и изменении размера окна — меньше кода для измерений и подписок на события. Patrick Brosset также разбирает, почему встроенные title-подсказки используют редко и каким мог бы стать стилизуемый ::tooltip.
Dart Sass 2.0 запланирован на декабрь
Команда Sass описала путь к Dart Sass 2. Многие предупреждения об устаревшем синтаксисе из ветки 1.x станут ошибками, поэтому сейчас подходящий момент запустить сборку с предупреждениями и обновить старые стили.
- Panda CSS 2.0 сохранил знакомый
css()API, но получил компилятор на Rust. В релизе также есть публикуемые дизайн-системы, стили для View Transitions, ESLint-плагин и пресет типографики. - Temani Afif показывает, как реализовать
children-count()в современном CSS и строить стили, зависящие от количества дочерних элементов. - CSS Doodle использует CSS как язык для генерации узоров, фонов и иконок. На странице примеров можно подсмотреть идеи, а v0.55 добавляет новые типы мозаик.
- pure-web-bottom-sheet — доступный веб-компонент нижней панели на CSS Scroll Snap и scroll-driven animations; примеры помогают оценить поведение на устройствах с тач-вводом.
- Gradient Visualizer разбирает сложное значение
backgroundс градиентами на слои: их можно изучать по отдельности, редактировать и собрать обратно в CSS.
Заходите в Telegram-канал
Там можно спокойно обсудить выпуск, принести свою ссылку, задать вопрос или просто отметить материал, который пригодился в работе
📦 JavaScript
Deno присоединяется к Cloudflare
Deno станет частью Cloudflare. Для разработчиков это заметное сближение рантайма JavaScript и инфраструктуры edge: обе команды обещают сохранить открытый характер Deno и развивать инструменты для запуска кода ближе к пользователю.
- Библиотека audio собрала более 140 высокоуровневых операций над звуком в JavaScript: от шумоподавления и эквалайзера до синтеза и анализа музыки.
- astromd4x заменяет
@astrojs/markdown-remarkв Astro и обещает рендер Markdown в 50–70 раз быстрее благодаря одной нативной зависимости. - Миниатюрный реактивный пакет µsignal совместим по ощущениям с Preact Signals и Solid, а с Brotli занимает около 816 байт.
- Amber — типобезопасный язык, который компилируется в Bash и помогает поймать часть ошибок ещё до запуска скрипта.
- wasm-git переносит Git на libgit2 и WebAssembly, поэтому подходит и для Node.js, и для браузера.
⚛️ React и фреймворки
Next.js 16.4 рекомендует Cache Components по умолчанию
В Next.js 16.4 Cache Components стали рекомендуемым вариантом и включаются в новых приложениях через create-next-app. В документации кэширования объясняется, какие части интерфейса можно переиспользовать, а в релизе описаны улучшения для агентных инструментов и изменения для всех приложений.
Preact 11 и Remix 3.0 развиваются своим путём
Preact 11 добавил Hydration 2.0 и автоматическую передачу ref; при использовании preact/compat пригодится его руководство по обновлению. Remix 3.0 вышел из стабильной ветки и больше не построен на React, а в статье о шести месяцах с v3 можно узнать, как изменился подход к приложению.
- Визуальная нотация деревьев React предлагает отдельно показывать, где элемент находится в DOM, и какой компонент его создал. Песочница строит такие схемы из вставленного кода.
- Эксперимент с дополнительными оптимизациями React Compiler разбирает код компилятора и проверяет, что дадут инлайнинг, блоки и вывод селекторов.
- React Aria Sheet — свайпаемая нижняя панель, в которой инерция и анимации построены на scroll snapping и view timelines. Сам компонент доступен в React Aria, а релиз 1.22 включает его в библиотеку React Aria.
- Бенчмарк React Compiler и Context на 5 000 радиокнопок исследует, может ли компилятор снизить потребность в context selectors.
- Практики структуры папок React-проекта помогают выбрать структуру, которая не превратится в лабиринт с ростом приложения.
- TanStack Charts 1.0 предлагает типизированные графики, собранные из меток и шкал, с выводом в SVG или Canvas. Это переосмысление прежнего React Charts; каталог примеров показывает готовые комбинации и код.
- Ink 8 обновил React-рендерер для терминалов:
Boxтеперь умеет прокручиваться, а перерисовка затрагивает только изменившиеся части строк. - Redux Toolkit 2.13 добавил поддержку TypeScript 7 и исправил создание нового селектора в
useQuery. Документация пакетов Redux теперь собрана на redux.js.org, включая раздел Redux Toolkit. - Mantine 9.7 добавил компонент Tour для знакомства с интерфейсом и расширил доступ к документации через MCP.
- React Native Testing Library 14.1 поддерживает React Native 0.88 и React 19.3, а также добавляет пользовательское событие
pullToRefresh(). - React Native Skia 3.0 переходит на графический бэкенд Skia Graphite. Перед обновлением полезно свериться с руководством по миграции, особенно если приложение использует собственные шейдеры или сложную графику.
- Lexical 0.51 переведён только на ESM и приближает расширяемый редактор Meta к версии 1.0.
- В Base UI 1.9 появились фильтруемые меню в preview, а также исправления фокуса и Drawer. Доступен и Material UI 9.5.
- MSW 3.0 стал ESM-only, получил GraphQL-подписки и уменьшил размер. Это обновление для тех, кто подменяет сетевые запросы в тестах и разработке.
- Shaders открыл исходники WebGPU-движка и более 190 компонентов эффектов; каталог содержит варианты для React, Vue, Svelte, Solid и обычного JavaScript.
- liquid-glass-svelte воспроизводит эффект жидкого стекла Apple в Svelte с настройкой размытия, бликов и границ.
- ng2-charts приносит Chart.js в Angular и устанавливается через Angular CLI, а официальный репозиторий Angular Skills даёт агентам актуальные инструкции по разработке Angular-приложений.
- @lucky-media/astro-seo переносит знакомую из Next.js идею
generateMetadataв Astro: общие SEO-настройки задаются один раз, а страницы могут их переопределять.
📘 TypeScript
TypeScript 7 пытаются портировать на Rust
ts-rust — очень ранний эксперимент по переносу компилятора TypeScript 7 на Rust с помощью ИИ-агентов. Это не замена официальному компилятору, но интересный пример того, как можно исследовать производительность и архитектуру привычного инструмента.
⚙️ Node.js
Node.js 26.11 добавляет тайм-аут процесса и развивает SQLite
Node.js 26.11.0 получил --process-timeout, который завершает зависший процесс, виртуальные таблицы в node:sqlite, Buffer.stringLength() и поддержку Alpine x64 второго уровня. Полезные детали реализации — в PR для тайм-аута, SQLite и Buffer.stringLength(). Новый дизайн документации временно откатили в 26.11.1, потому что он не отдавал HTML; экспериментальная версия остаётся на beta.docs.nodejs.org.
- Vite+ 1.0 объединяет выбор версии Node.js, пакетный менеджер и фронтенд-инструменты в команду
vp; он уже указан среди вариантов на странице скачивания Node.js. - Будущие версии Node.js должны синхронно загружать большинство ES-модулей: соответствующий коммит и PR оставляют асинхронный путь для top-level
await, loader hooks и похожих случаев. В основной ветке также уже появился V8 15.5. - Matteo Collina объясняет, почему объекты с
null-прототипом могут сначала работать медленнее в V8 и как сохранить производительность. - В материале о пуле потоков Node.js на занятой машине показано, почему число потоков нельзя всегда приравнивать к числу ядер CPU.
- Новый сопровождающий wait-on делится опытом поддержки пакета с помощью агентов.
- Сравнение сборки JavaScript в один исполняемый файл рассматривает подходы Node.js, Bun и Deno.
- DOCX 9.9 улучшает генерацию Word-документов из JavaScript и приближает раскладку к поведению Word; возможности библиотеки собраны на docx.js.org.
- H3 v2 переписан вокруг стандартных
RequestиResponse, поэтому одно HTTP-приложение можно запускать в Node, Bun, Deno и Workers. У фреймворка есть краткое руководство по маршрутизации и middleware. - Klattsch превращает фонемы в синтезированную речь в стиле 1980-х и работает как npm-пакет в Node.js и браузере.
- Feedsmith 3.0 читает и генерирует RSS, Atom и JSON Feed в браузере и Node.js. Для старых проектов есть миграция с v2 и быстрый старт.
- pnpm 12.10 экспериментирует с linker
loaded: зависимости можно загружать прямо из хранилища pnpm без связыванияnode_modules. - Hono 5.0 RC переходит на ESM-only, требует Node 22.12+ и выносит адаптеры рантаймов в отдельные пакеты.
- Execa 10.1 исправляет пограничные случаи запуска процессов, включая наследование
process.envприextendEnv: false. - Handlebars 4.7.10 закрывает две критические уязвимости JavaScript-инъекций: проекты на ранних 4.x стоит обновить.
- У he 2.0 — первый релиз за восемь лет: кодировщик и декодировщик HTML-сущностей перешёл на ESM и именованные экспорты.
🤖 ИИ
WebMCP для Preact
Сервер preact-mcp даёт ИИ-агентам доступ к документации и репозиториям Preact через более чем 13 ресурсов. Это пример того, как фреймворки начинают готовить не только документацию для людей, но и структурированный контекст для инструментов разработки.
⚒️ Инструменты и библиотеки
Медиа, графика и интерфейсные заготовки
- Fantasy Map Generator — интерактивный редактор фэнтезийных карт с открытым исходным кодом для писателей, игровых мастеров и картографов.
- Dither It! обрабатывает изображения локально в браузере и позволяет выбирать алгоритм и вид дизеринга.
- В Public Domain Image Archive собрано более 11 000 произведений, перешедших в общественное достояние: их можно искать, скачивать и использовать повторно.
- Remocn добавляет в реестр shadcn готовые компоненты для Remotion: переходы, затухания и другие заготовки для программного создания роликов.
- Video.js 10 объединяет наработки нескольких HTML-видеоплееров в один проект. В нём есть React и веб-компоненты, а размер базовой сборки уменьшен примерно на 60%.
- Snippets создаёт аккуратные скриншоты кода с настройкой фона, типографики, окна и композиции.
- Vizua предлагает локальные браузерные инструменты для сжатия, изменения размера, конвертации и редактирования изображений.
- Pascal Editor — локальный 3D-редактор на React Three Fiber и WebGPU, который запускается в браузере или CLI и умеет подключать агентов по MCP.
Git, терминал и рабочий процесс
- Saggar — менеджер терминалов для macOS: агенты и shell-сессии можно держать рядом, читать их вывод и в любой момент перехватывать управление.
- GitSync Lite следит за локальными Git-репозиториями из строки меню macOS и показывает незакоммиченные или неотправленные изменения.
- Расширение GitHub CLI gh-stack помогает разбивать большую работу на цепочку небольших зависимых pull request, которые проще проверять по одному.
- vy — терминальный просмотрщик JSON и YAML с поиском, обходом дерева, извлечением и преобразованием данных через jaq.
- Oak — система контроля версий для агентов, состоящая из переиспользуемой библиотеки и CLI.
Остальное
- ICANN начала новый раунд заявок на домены верхнего уровня; список предложенных зон доступен на gtlds.fyi и включает даже
.node. - Sindre Sorhus отключил внешние pull request в своих репозиториях из-за потока сгенерированных ИИ-вкладов, но продолжает их сопровождать.
- Daniel Lemire сравнил сборку бинарника Node.js разными линкерами:
moldзаметно обошёл GNUldиgold. - Опубликованы результаты опроса разработчиков Stack Overflow 2026, основанные на ответах 30 903 человек.
- В коротком посте Paul Graham рассуждает, что делать компании без домена
.comс её названием. - Anthropeum — ежедневная браузерная игра: нужно определить место и эпоху десяти музейных артефактов.
- Статья о долгой и устойчивой карьере в веб-разработке предлагает личный взгляд на навыки и технологии, в которые стоит вкладывать время в период перемен.