Дайджест #47
🦊 Привет, это Фронти!
Я принёс свежий выпуск #47 и собрал главное за неделю ✨
В этом выпуске: Google I/O показал WebMCP, HTML-in-Canvas и Baseline Checker, Firefox 151 добавил Document Picture-in-Picture, CSS получил `round()` и gap decorations, npm усиливает защиту staged publishing, Express обновил сайт и документы, React-экосистема снова обсуждает RSC, а Node.js 26.2 стабилизировал `stream.compose`.
🧪 HTML и веб-платформа
- Google I/O 2026 принёс WebMCP для связи сайтов с AI-агентами, Baseline Checker и идеи для AI-навыков прямо в Chrome.
- HTML-in-Canvas пробует соединить привычные HTML-элементы с гибкостью canvas для сложной графики и редакторов.
- Firefox 151 добавил Document Picture-in-Picture на десктопе и CSS `@container style()` queries.
- Поддержка RTL-языков снова напоминает: иногда два атрибута `dir` и `lang` чинят больше, чем неделя костылей.
- webcompat.dev показывает, как устроена реальная карта совместимости веба.
🎨 CSS и интерфейсы
- CSS `round()` помогает делать fluid-размеры предсказуемее и аккуратнее.
- Gap decorations позволяют стилизовать промежутки между grid, flexbox и multi-column элементами без лишних обёрток.
- Julia Evans рассказала, как уход от Tailwind к обычному CSS помогает лучше увидеть структуру страницы.
- Cross-document View Transitions выглядят магически, но требуют внимания к состояниям, именам элементов и деталям реализации.
- Темы, CSS-фоны, shorthand-свойства и reset-кнопки снова доказали: CSS умеет быть и красивым, и коварным.
📦 JavaScript
- ShadowRealm обещает изолированное окружение для выполнения стороннего JavaScript.
- `JSONRegistry` предлагает способ сохранять и восстанавливать сложные пользовательские типы через JSON.
- Brownies даёт удобный API поверх cookies, storage и IndexedDB.
- Alien Signals добавляет маленькое реактивное ядро в духе Vue, Preact и Svelte.
- У Bun снова обсуждают Rust-порт и качество AI-портированного кода.
- История 2ality напоминает, как AI-краулеры уже меняют поведение авторов в открытом вебе.
⚛️ React и фреймворки
- Component Party сравнивает React, Vue, Svelte, Angular и другие фреймворки на одних и тех же задачах.
- TanStack показывает React Server Components как идею, а не только как фичу Next.js.
- Storybook 10.4 добавил первую поддержку TanStack React.
- Relay 21 принёс first-party TypeScript support и экспериментальную поддержку RSC.
- GL-React v6 позволяет писать WebGL-шейдеры через JSX.
- Redux Toolkit, React Redux, Jotai, Fate, Rockpack и календарные компоненты тоже получили свежие обновления.
🛰️ Сборка и фреймворки
- Angular 22 приближается к финальному релизу.
- Миграция с Webpack на Rspack снова показывает, насколько сильно Rust-инструменты могут ускорять сборку.
- Rolldown 1.0.1 продолжает готовить быстрый фундамент для будущего Vite.
- Vavite переносит удобства Vite в серверные приложения.
- Qite.js делает ставку на HTML, SSR, отсутствие build step и минимум магии.
📘 TypeScript
- TypeORM 1.0 наконец вышел из долгой ветки 0.x и стал взрослее для production-проектов.
- Kanel 4.0 генерирует TypeScript-типы из Postgres и помогает держать схему БД ближе к коду.
- Vue.js Language Tools 3.3 улучшает поддержку Vue-файлов в редакторах.
- Deno 2.8 готовит поддержку TypeScript 6.0.3.
⚙️ Node.js и рантаймы
- Express получил новый сайт, бренд и обновлённую документацию. Старый дефолт явно решил выглядеть живым.
- npm вводит staged publishing и обсуждает opt-in для install scripts, чтобы supply chain атакам было сложнее жить.
- Новая волна Mini Shai-Hulud затронула 300+ npm-пакетов.
- Node.js 26.2 стабилизировал `stream.compose`, а `fs.Stats` начал поддерживать `Temporal.Instant`.
- Deno 2.8 обещает улучшенную совместимость с Node.js.
- Bun 1.3.14 добавил `Bun.Image`, HTTP/2, HTTP/3 и новые улучшения совместимости.
- В Node.js через FFI уже запустили Doom в терминале, потому что JavaScript должен уметь всё, даже когда его об этом не просили.
🤖 ИИ
- Google представил Modern Web Guidance - набор evergreen-навыков для AI-агентов про UX, производительность, доступность и layout.
- Mark Erikson показал свой реальный workflow с агентами, заметками, базой знаний и инструментами.
- Миграцию Express в Next.js разобрали как пример работы с agent skills.
- Gemini CLI превращается в Antigravity CLI, а Simon Willison коротко подвёл итоги последних шести месяцев в LLM.
⚒️ Инструменты и библиотеки
- SVG Studio делает SVG-анимацию похожей на монтажный стол с timeline и keyframes.
- Swup добавляет плавные переходы серверным сайтам без превращения всего в SPA.
- Critical 8.0 помогает извлекать и встраивать критический CSS.
- phantom-ui строит skeleton loader по реальной структуре DOM.
- Pica 10.0 качественно уменьшает изображения в браузере через WASM и Web Workers.
- Orval генерирует типобезопасные клиенты из OpenAPI.
- cssdb, hihtml, ESLint Config Inspector, Shiki и SQL Formatter тоже обновили набор полезных инструментов недели.
🦊 Лисья шутка недели:
Google показал WebMCP, чтобы сайты могли разговаривать с AI-агентами напрямую. Фронтендеры в этот момент всё ещё пытаются договориться с `z-index`, но переговоры идут тяжело.
npm добавил staged publishing, потому что экосистема наконец признала: `npm publish` не должен ощущаться как кнопка «выпустить дракона в прод».
Полный выпуск уже на месте 👉 https://frontend-weekly.ru/weekly-digest-47/
design
frontend digest
html
css
javascript
node.js
typescript