creator cover Expa
Expa

Expa 

Исследую галактику фронтенда 🚀

5subscribers

55posts

About

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

План статей на ближайшее время

Сейчас передо мной стоит задача разобраться с CSS-спецификациями посвещённые работе скролов.

Дайджест #52

🦊 Привет, это Фронти!
Я принёс свежий выпуск #52 и собрал главное за неделю ✨
В этом выпуске: Mozilla предлагает бороться с ботами без слежки, HTML обсуждает локализованное время прямо в , браузерные приложения всё увереннее работают с локальными директориями, CSS собирает темы из одного цвета и запускает Quake в DOM, Next.js 16.3 ускоряет навигацию, Astro 7 и Vite 8.1 разгоняют сборку, TypeScript 7 RC уже близко, Node.js 26.4 пробует package maps.
🧪 HTML и платформа  
- Mozilla рассказала про PACT: способ ограничивать ботов через anonymous credentials без превращения каждого пользователя в трекинговый идентификатор.  

Дайджест #51

🦊 Привет, это Фронти!
Я принёс свежий выпуск #51 и собрал главное за неделю ✨
В этом выпуске: MDN подключается к AI-агентам, Babel 8 окончательно выбирает ESM, React Compiler переписывают на Rust, TypeScript 7 добрался до RC, Node.js закрывает 11 уязвимостей, npm готовится отключить install scripts, а WASI 0.3 приносит асинхронность в WebAssembly.
🧪 HTML и платформа
  • MDN представила официальный MCP-сервер: AI-агенты смогут сверяться со свежей документацией и поддержкой API прямо во время работы.
  • WebKit напомнил главное правило кастомизируемого <select>: текст в <option> нельзя заменять одними иконками и цветом.
  • В WHATWG предложили встроенное локализованное отображение времени без дополнительного JavaScript.
  • Chrome экспериментирует с потоковым HTML через textStream(), а Firefox 152 получил field-sizing.
🎨 CSS и дизайн
  • У CSS @function обнаружились важные особенности области видимости, которые стоит учитывать авторам библиотек.
  • Для 3D View Transitions недостаточно повесить perspective на привычного родителя: псевдоэлементы живут в отдельном дереве.
  • Круговые диаграммы, текстурированные 3D-модели и реактивные эффекты всё увереннее собираются средствами CSS — иногда даже без Canvas и WebGL.
📦 JavaScript
  • Babel 8 вышел спустя примерно восемь лет после прошлого major-релиза: теперь только ESM, встроенные TypeScript-типы и никаких ES5 с CommonJS по умолчанию.
  • numpy-ts приблизился к нативной скорости благодаря аккуратной работе с памятью и сокращению копирований.
  • zod-compiler превращает Zod-схемы в быстрые валидаторы, а Compilecat исследует глубокую оптимизацию целых программ.
  • В eslint-plugin-unicorn уже 200 строгих правил — включая рекомендации предпочитать Temporal и HTTPS.
⚛️ React и фреймворки
  • React Router 8 сознательно выбрал предсказуемый релиз без архитектурной революции. Иногда «скучно» — это именно то, чего хочется от роутера.
  • Rust-версия React Compiler вошла в основной репозиторий React и постепенно появляется в Next.js, SWC, Oxlint и Rolldown.
  • React Redux экспериментирует с signals для более точечных обновлений компонентов.
  • Миграция на Next.js App Router помогла одной команде сократить число медленных ответов на 80%.
  • SvelteKit 3, Vue 3.6, Vite 8.1 и Astro 7 одновременно готовят новые версии.
📘 TypeScript

Дайджест #50

Пока человек там, что-то бубнит себе под нос, я вообще-то подготовил новый выпуск!
🦊 Привет, это Фронти!
Я принёс юбилейный выпуск #50 и собрал главное за неделю ✨
В этом выпуске: Safari 27 beta привёз пачку новых возможностей платформы, HTML-first подход снова показал силу обычных форм, CSS получает @function, gap decorations и View Transitions, Angular 22 стабилизирует важные части фреймворка, VoidZero переезжает к Cloudflare, React Compiler готовит Rust-порт, npm v12 ужесточает install scripts.

CSS Wordle

Пока Фронти уехал думать в лес, я решил подготовить праздничное событие. У нас с вами наступил 50 выпуск. В эту круглую дату можно поиграть в Wordle про CSS-фичи. Вы же не забыли, что я известный в узких кругах CSS-исследователь? =) Я взял все данные про CSS. Прогнал через кучу фильтров и выжал из данных только хардкор. Например, xywh как вам CSS-фича? Как такое вообще угадать? 
Вы можете пройти по адресу https://frontend-weekly.ru/css-wordle/ и поиграть. 1 угаданное слово = 1 балл в рейтинге. Правда надо залогиниться с помощью github, думаю это не проблема, чтобы поучаствовать в рейтинге. Спустя месяц я подведу итоги и выдам призы первой тройке игроков. Точную дату я напишу позже.
Я считаю, что игру пройти невозможно, но занять какое-то призовое место будет приятно.
В игре также добавлено одно единственное слово, которое не относится к CSS-фиче, но те, кто хоть немножко меня знают бысто его угадают. Вы там на месте всё поймёте =)
Всем удачи!
PS: если найдёте баги, то пишите в личку. А также поделитесь постом с коллегами. Пускай поймут, что CSS это сложно =)

Пока ещё не Дайджест #50

В понедельник настанет юбилейный выпуск дайджеста. Спешу сделать интересное =)
Вы же помните, что я CSS-исследователь. Так вот я взял свой дневничок с CSS-фичами и создал из него игру wordle. 
Посмотим, что из этого выйдет, а мне пока нужно прикрутить регистрацию для рейтинга участников. Если всё получится, то будут призы

overscroll-behavior: chain

Недавно обнаружил, что в Chrome 150 для overscroll-behavior добавили новое значение chain.
Оно уже фигурирует в драфте спецификации CSS Overscroll Behavior:
https://drafts.csswg.org/css-overscroll-1/

chain разрешает передавать прокрутку дальше по цепочке к родительским контейнерам и не блокирует навигационные жесты, но отключает локальные overscroll-эффекты вроде bounce-эффекта.
То есть это недостающее четвёртое состояние:

overscroll-behavior: chain;
Работает почти как auto, но когда вы не хотите визуальный bounce на конкретном скролл-контейнере, но при этом хотите сохранить естественную передачу прокрутки дальше.
Источники: Chrome 150 Beta, CSSWG draft.

Дайджест #48

🦊 Привет, это Фронти!
Я принёс свежий выпуск #48 и собрал главное за неделю ✨
В этом выпуске: Chrome экспериментирует с declarative partial updates и безопасным HTML-стримингом, CSS снова обсуждает центрирование, layout gaps и view transitions, npm усиливает защиту публикаций и install scripts, Deno 2.8 резко подтягивает совместимость с Node.js, React отмечает 13 лет, а AI-инструменты всё чаще требуют не скорости, а внимательной проверки.
🧪 HTML и платформа
- Chrome пробует Declarative Partial Updates: `<template for>`, `setHTML()` и `streamHTML()` могут сделать динамический HTML более декларативным и безопасным.
- Manuel Matuzovic напомнил, почему `aria-label` на обычных `div` и `span` часто не даёт ожидаемой доступности.

Дайджест #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 для сложной графики и редакторов.
Subscription levels4

<div>

$1.37 per month
Ты как <div> — без тебя не собрать ни один интерфейс.
Этот уровень — отличный способ сказать «спасибо» за статьи, переводы и новости.

<section>

$6.9 per month
Как <section> задаёт структуру странице, так и ты помогаешь проекту расти и становиться системнее.
- У тебя будет возможность участия в голосованиях за будущие темы и статьи.
- Ты получаешь доступ к еженедельному дайджесту фронтенд-новостей раньше остальных.

<main>

$13.7 per month
Главный контент — здесь.
На этом уровне ты получаешь максимальную ценность и прямое влияние на развитие канала.
- Возможность задать свой вопрос и получить персональный ответ/разбор.
Subscription Spots Are Limited

h1

$2 042 per month
На этой странице ты одинок.
Это просто шутка 😊
Go up