Дайджест #54
🦊 Привет, это Фронти!
Я принёс свежий выпуск #54 и собрал главное за неделю ✨
В этом выпуске: Safari учит AI-агентов смотреть в настоящий браузер, Chrome аккуратнее работает с буфером обмена, CSS получает якоря, миксины и фигурные рамки, ECMAScript 2026 уже почти весь живёт в рантаймах, Bun переписывают на Rust, TypeScript 7 выходит с Go-компилятором, npm 12 отключает install scripts по умолчанию, а Google проверяет сайты на готовность к AI-агентам.
🧪 HTML и платформа
- Большой разбор эволюции фронтенда напоминает, как мы дошли от FTP и jQuery до edge, SSR, SPA и нового HTML-first маятника.
- Safari Technology Preview 247 добавил Safari MCP Server: AI-агенты теперь могут смотреть на реальную страницу, DOM и поведение интерфейса в браузере.
- Chrome улучшает Async Clipboard API: данные из буфера обмена будут загружаться ленивее и аккуратнее по MIME-типам.
- Edge DevTools получил подсветку layout gaps, улучшения клавиатурной доступности и помощь при миграции PWA.
- VS Code 1.127 добавил agentic browser tools, чтобы ассистенты могли работать с браузером прямо во время разработки.
🎨 CSS и интерфейсы
- CSS Anchor Positioning всё ближе к нормальной жизни: tooltips, popovers и меню можно будет привязывать к элементам без ручного пересчёта координат.
- В Chromium начали реализацию CSS Mixins — браузеры снова тихо забирают работу, ради которой мы годами держали препроцессоры.
- border-shape показывает будущее декоративных рамок, сложных углов и форм без пачки SVG и лишних обёрток.
- progress() помогает делать fluid typography так, чтобы она уважала пользовательский масштаб текста.
- Full-bleed layout снова получил полезный разбор: 100vw всё ещё умеет подарить горизонтальный скролл там, где его никто не звал.
♿ Доступность и UX
- Grace Snow написала о дизайне для людей с трудностями чтения: понятный язык, структура, контраст и отсутствие перегруза важнее декоративной магии.
- OverflowGuard предлагает строить компоненты вокруг реального контента, а не только вокруг брейкпоинтов.
- Driver.js 1.6 помогает делать туры по интерфейсу, подсветки и контекстные подсказки прямо внутри продукта.
📦 JavaScript, Deno, Bun и WebAssembly
- ECMAScript 2026 утверждён: среди приятного — Array.fromAsync, Base64/Hex для Uint8Array и другие улучшения стандартной библиотеки.
- Bun переписывают на Rust, причём большая часть порта была сделана с участием AI-инструментов.
- PocketJS запускает JavaScript примерно в 8 МБ памяти и даже добирается до Sony PSP.
- js1024 2026 открыл приём работ: снова можно попытаться уместить маленькое чудо в 1024 байта.
- PGlite дошёл до 10 миллионов загрузок в неделю — Postgres в WASM чувствует себя всё увереннее.
📘 TypeScript
- TypeScript 7.0 вышел с новым Go-компилятором и обещает заметно ускорить проверку типов в больших проектах.
- Переходить всем сразу рано: программного API пока нет, поэтому часть инструментов ещё будет жить на TypeScript 6.0.
- Заодно есть хороший разбор distributive conditional types — той самой магии, где T extends ... ? ... : ... внезапно начинает вести себя слишком умно.
⚛️ React
- Появился разбор устройства ChatGPT Web: React Router 7, TanStack Query, Radix, ProseMirror и аккуратная отложенная загрузка не самых важных скриптов.
- shadcn/ui для новых проектов теперь использует Base UI по умолчанию, но Radix-варианты остаются.
- Документация React подробно объяснила, что активирует Suspense boundary.
- React Forms Done Right проходит путь от обычных HTML-форм до React 19 actions, TanStack Form и Zod.
- В Next.js обсуждают официальный WebSocket support в Route Handlers.
🛰️ Фреймворки и сборка
- Vite+ Beta предлагает одну команду vp для dev server, тестов, форматирования, lint и сборки.
- Cloudflare выпустила vinext 1.0 Beta — Vite-плагин, который переосмысляет Next.js API, включая App Router, RSC, Server Actions и ISR.
- Medal рассказал, как уменьшил Electron frontend bundle с 40+ МБ до 2.7 МБ с помощью Vite, Rolldown, code splitting и чистки зависимостей.
- Есть свежий взгляд React-разработчика на SolidJS 2.0 и сравнение Kotlin Multiplatform с React Native на одинаковом приложении.
⚙️ Node.js
- npm 12 стал стабильным и отключил lifecycle scripts при установке по умолчанию — большой шаг в сторону supply chain-безопасности.
- Node.js 26.5.0 добавил экспериментальный импорт текстовых файлов в ES modules через import attributes.
- В Node появились blob.textStream() и новые возможности для измерения задержек event loop.
- Matteo Collina разобрал CVE, который не должен был быть CVE, и показал, как security-fix может разъехаться по экосистеме с неприятными последствиями.
- Trusted publishing снова напомнил: это полезный механизм публикации, но не знак качества и не гарантия безопасности пакета.
🤖 ИИ
- Google представила Agent-Ready Toolkit в Lighthouse: он проверяет, насколько сайт понятен AI-агентам.
- Забавно, что многие agent-ready проверки на самом деле совпадают с хорошей доступностью для людей: чистое accessibility tree, стабильный layout и понятные элементы.
- Автор htmx показал спокойный практический пример работы с AI: не магия вместо инженера, а помощник в расследовании бага.
⚒️ Инструменты и библиотеки
- Wordgard — новый rich text editor от автора ProseMirror с модульной архитектурой и совместным редактированием.
- visual-json от Vercel Labs даёт tree view, form view, diff view и raw editing для JSON.
- µJS добавляет SPA-навигацию обычным script tag без большого фреймворка.
- GTA2 Web переносит классическую GTA 2 в браузер и добавляет WebRTC multiplayer.
- Better Auth присоединяется к Vercel, Meta открыла дизайн-систему Astryx, а Dependency Cruiser 18.0 помогает следить за зависимостями внутри проекта.
🦊 Лисья шутка недели:
Safari MCP Server теперь даёт AI-агенту посмотреть на реальный браузер. Где-то один layout впервые понял, что фраза «у меня локально работает» больше не является алиби.
npm 12 отключил install scripts по умолчанию, и тысячи пакетов внезапно такие: «а можно мы просто установимся, без маленького перформанса на postinstall?»
TypeScript 7 переписали на Go ради скорости. Теперь типы проверяются быстрее, а разработчик всё равно сидит и думает: «почему этот conditional type смотрит на меня как на junior-а?»
Полный выпуск уже на месте 👉 https://frontend-weekly.ru/weekly-digest-54/
frontend
frontend digest
html
css
javascript
typescript
node.js
react