Frontend Weekly
На главную

Еженедельный дайджест #11: Новости фронтенда

Как читать этот дайджест
  • Начните с заголовков статей, чтобы получить общее представление о содержании
  • Быстро пробегитесь по первым абзацам, чтобы понять актуальность материалов именно для вас
  • Выберите наиболее интересные или полезные темы под текущие задачи
  • Планируйте чтение: выделите, например, 15 минут утром и 15 минут вечером
  • Не пытайтесь прочитать всё сразу — возвращайтесь к дайджесту в удобное время
  • При повторном просмотре читайте выбранные статьи более вдумчиво, делая заметки
  • Не сожалейте, если прочитали лишь часть: ценность в качестве, а не в количестве
  • Используйте закладки для сохранения интересных материалов
  • Делитесь инсайтами и ссылками с коллегами — так информация лучше усвоится
HTML живее всех живых 🦴
@layer приручает каскад 🎨
TypeScript 5.9 — без шума 📝
SPA? Сервер снова в моде 🌐
Web Workers ускоряют React ⚡
V8 разогнал JSON.stringify 🚀
Node 22.18 — TS прямо в рантайме 🔧
FlashList v2 — списки без тормозов 📱
React Native Audio API — звук везде 🎵
Dependency Cruiser рисует графы 🔍
Фронти - маскот дайджеста

🧪 HTML и API

Почему семантический HTML всё ещё важен

Чем больше «шумного» DOM‑дерева, тем медленнее страница. Автор напоминает, что аккуратная, семантическая разметка — это не «олдскул», а основа производительности и устойчивости интерфейса. Практически: меньше бессмысленных <div>, больше «правильных» элементов (например, <button>, <nav>, <header>), понятная структура, меньше костылей в CSS и JS. Это помогает доступности, SEO и поддержке кода.

Дополнительно: о будущем разметки в заметке «HTML мёртв? Да здравствует HTML» — автор рассуждает, какой могла бы быть гипотетическая «HTML6», если бы прибраться от накопившегося хлама.

🎨 CSS и дизайн

Каскадные слои: почему @layer меняет подход к стилям

Видео‑разбор того, зачем вообще «С» в CSS и как cascade layers помогают предсказуемо управлять приоритетами без бесконечных !important. Идея простая: вы явно раскладываете стили по слоям (библиотеки, базовые токены, компоненты, оверрайды), и браузер всегда применяет их в одном и том же порядке. Это снижает «войну специфичностей» и облегчает командную работу.

Присоединяйтесь Telegram-каналу

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

Подписаться

TypeScript 

TypeScript 5.9 — мягкий релиз, но с полезными штрихами

Версия без «громких» фич, но приятная в быту: поддержка import defer (эксперимент веб‑платформы для ленивых импортов), новая опция компилятора --module node20, а в IDE появились «раскрывающиеся» подсказки типов (проще разглядывать сложные типы). В посте также приподнимают занавес над TypeScript 6.0 (переходный релиз) и будущим Go‑портом TypeScript, который станет TS 7.0. Читайте официальный анонс.

⚛️ React и экосистема

”JavaScript — не проблема, проблема была в замене браузера”

Создатель RedwoodSDK рассуждает о том, что подход SPA (Single Page Application) изначально был компромиссом, чтобы обойти ограничения платформы. Сейчас, когда серверные технологии и платформы вроде Cloudflare развиваются, логично снова двигаться в сторону серверно-ориентированной архитектуры.

”Создание full-stack приложения с React и Aspire”

Aspire — это инструмент от Microsoft на .NET для построения распределённых приложений. В статье показан пошаговый пример, как создать приложение с бэкендом на C# и фронтендом на React. Подойдёт, если хочешь попробовать смешать экосистемы .NET и React.

”Web Workers в React: пошаговое руководство”

Web Workers позволяют выполнять код в фоновом потоке, не блокируя основной интерфейс. Это усложняет архитектуру, но иногда серьёзно ускоряет работу приложения. В статье подробно разобрано, как внедрить Web Workers в проект на React.

”React Query Selectors, но мощнее”

Новая статья из серии постов Dominik Dorfmeister (TkDodo) о том, как эффективнее работать с селекторами в React Query. Если используешь React Query, здесь много идей для оптимизации запросов.

⚙️ Node.js

Как V8 делает JSON.stringify более чем в 2 раза быстрее

Команда V8 оптимизировала сериализацию JSON, поэтому вызовы JSON.stringify заметно ускорились — это важно для API‑ответов, кеширования и логирования. Улучшение попадёт в Node, когда он обновится до V8 13.8 (сейчас Node 24 использует 13.6). Если коротко: переписали «горячие» участки, уменьшили лишние проверки и сделали работу с буферами эффективнее. Подробности — в статье на блоге V8.

Node.js 24.5.0 (Current)

Обновление «текущей» ветки: апгрейд до OpenSSL 3.5, снят флаг с --experimental-wasm-modules, а модули node:http и node:https теперь умеют работать через прокси. Список изменений — в анонсе релиза.

Node.js 22.18 (LTS): «полоскаем» типы по умолчанию

В LTS‑ветке включили экспериментальную поддержку запуска TypeScript «напрямую»: можно писать node app.ts, а Node автоматически удалит типы перед исполнением. Это не полноценный компилятор TS, но удобно для скриптов и прототипов. Детали — в заметке команды.

  • Коротко: npm добавил возможность безопасно публиковать пакеты из CI/CD через OpenID Connect (OIDC). Это убирает хранение долгоживущих токенов. Подробнее — в объявлении npm.

Веб‑платформа и браузеры

Издатели против плана W3C «убить» сторонние куки

Группа лоббистов пожаловалась в британский антимонопольный регулятор: мол, текущая позиция W3C по third‑party cookies якобы «нечестно играет на руку Google» и вредит издателям. Что важно новичку: эпоха сторонних куки стремительно уходит, и рынок спорит не о «нужно ли», а как именно заменить трекинг и атрибуцию, чтобы не утонуть в стенах и монополиях.

⚒️ Инструменты и библиотеки

”FlashList v2 — высокопроизводительные списки для React Native”

Переписанная с нуля библиотека списков для React Native с переработанной архитектурой и поддержкой «рециклинга» элементов. Это обеспечивает плавную прокрутку без пустых промежутков. Есть документация и GitHub.

”React Native Audio API”

API, которое переносит возможности Web Audio API в React Native. Работает на iOS, Android и Web. Подробнее о возможностях в блоге.

”React-Date-Picker 12.0”

Классический компонент выбора даты теперь полностью на ESM. Подходит для проектов, где важна простота и лёгкая интеграция.

  • Dependency Cruiser 17 — инструмент для визуализации зависимостей вашего проекта. Можно посмотреть реальные графы популярных реп — ссылка на примеры здесь и сам проект — на GitHub.

Новые версии

  • CsvToMarkdownTable 1.6 — конвертер CSV → Markdown‑таблица: npm‑страница.
  • OpenAI Node 5.11 — официальный SDK к API OpenAI: релиз.
  • Undici 7.13 — HTTP‑клиент от команды Node: релиз.
  • Chalk 5.5 — раскраска строк в терминале: релиз.
  • Relay 20.1 — GraphQL-фреймворк от Facebook.
  • Storybook 9.1 — обновлённый инструмент для разработки UI-компонентов.
  • React Stripe.js 3.9 — компоненты для интеграции Stripe.
  • react-json-view 1.27 (демо) — просмотр JSON в React.