FrontEndDev
26.3K subscribers
2.59K photos
24 videos
7.82K links
🚀 Статьи, новости, туториалы по frontend разработке.

http://jem-space.ru

Admin: @jem_jem
Пишу в @five_a_m
AI и вайбкод @vibe_and_ai

Читать на парковке: https://max.ru/front_end_dev

Реклама: http://bit.ly/2NxmVDu
РКН: https://clck.ru/3GLw7G
Download Telegram
Декорирование gap в CSS: играем линиями между элементами

Gap Decorations позволяет украшать промежутки между элементами в grid, flex и multi-column, используя gap + rule. Псевдоэлементы внутри контейнера превращают gap в полотно для подчеркиваний, горизонтальных/вертикальных разделителей и даже паттернов с разной толщиной/цветом через rule-width, rule-color и repeat().

https://master.dev/blog/lets-play-with-gap-decorations/
🔥81
Нужен ли здесь `useEffect`? 12 сценариев из React-код-ревью — от производного состояния до React 19.2

На code review я регулярно встречаю один и тот же вопрос, только записанный разным кодом: «Как правильно синхронизировать эти значения через useEffect?» Со временем я понял, что чаще полезнее спросить иначе: а эффект здесь вообще нужен? В статье разбираю 12 типичных сценариев из React-код-ревью.

https://habr.com/ru/articles/1055486/
10🤔2😁1
Построение скролл-зависимой 3D-галереи по пути камеры из Blender с Three.js и GSAP

Рисуем кривую в Blender, экспортируем точки в JSON с учётом различий координат, а затем в Three.js восстанавливаем путь через THREE.CatmullRomCurve3 и раскладываем вдоль него сотни plane-картинок с рандомными смещениями.

Демо | Github

https://tympanus.net/codrops/2026/07/07/building-a-scroll-driven-3d-gallery-using-a-blender-camera-path-with-three-js-and-gsap/
11❤‍🔥4👍1
Стили в CSS с учетом границ

Функция view() позволяет привязывать прогресс анимации к видимости элемента в ближайшем scroll-контейнере: цвет/размер/поворот меняются, когда объект приближается к краям или уходит за них. На практике так раскрашивают элементы в сетке по горизонтальному положению, меняют тон при перетаскивании и подсвечивают ползунки по мере движения.

https://master.dev/blog/boundary-aware-styling-in-css/
🔥61👍1
Как сделать интерактивный элемент невидимым, но доступным

Используйте hidden="until-found" для скрытия контента с сохранением доступности (поиск по странице и навигация по фрагментам работают, элемент остаётся фокусируемым), а затем компенсируйте отсутствие ховера/видимости через contain-intrinsic-size: auto none, чтобы не было layout shift.

https://master.dev/blog/how-to-make-an-interactive-element-invisible-but-accessible/
104🔥1
Как мы во фронтенд-команде ПСБ прокачали релизный цикл npm-пакетов.

Внутренние библиотеки и микрофронты собрали в пакетный процесс с SemVer, обязательным migration guide для breaking changes и публикацией через CI, чтобы исключить разъезд окружений и человеческий фактор. Более подробно - в статье.

https://habr.com/ru/companies/psb/articles/1055888/
🔥5💩3👍21🥱1
Как проектировать интерфейсы для уязвимых пользователей: почему ментальным health-приложениям нельзя гнаться за любыми UI-трендами

Трендовые решения часто повышают когнитивную нагрузку и делают навигацию непредсказуемой — в итоге человек в стрессе просто не находит нужную помощь и быстро уходит. Важно проверять каждый модный паттерн по пяти критериям: нагрузка, эмоциональное соответствие, надежность навигации, доступность и корректность механик вовлечения без давления/стыда.

https://smashingmagazine.com/2026/07/designing-distressed-users-mental-health-apps-ui/
3🔥3🤔1
ariaNotify(): как заставить скринридер проговорить текст

Новый метод ariaNotify() из WAI-ARIA 1.3 позволяет программно запускать озвучивание: передайте строку и (при необходимости) конфигурацию, например document.ariaNotify("Hello, World.").

https://master.dev/blog/the-siren-song-of-arianotify/
👍321
TypeScript 7.0 — самое радикальное обновление за 10 лет

TypeScript 7 ускоряет сборку и работу в IDE за счёт нативного порта, многопоточности и оптимизаций: полная сборка проекта до 8–12 раз быстрее, а цикл в --watch становится заметно короче. На реальных крупных open-source кодовых базах ускорение достигает почти 12×, а потребление памяти снижается на 6–26%.

https://habr.com/ru/companies/haulmont/articles/1057526
👍2171
Frontend CTF, или Как связаны Мона Лиза и искусственный интеллект

История про ежегодный браузерный CTF, где флаги спрятаны в интерфейсе, коде и даже в видео/логах, а для прохождения нужны знания фронтенда, сетей и веб-стандартов. Разбираемся, как устроены уровни и задания: генерация идей, подготовка подсказок, автоматический деплой в изолированную среду и встраивание в сюжет, плюс что происходит при попытках «положить» сервер.

https://habr.com/ru/companies/yandex/articles/1051050/
👍42👎1
backdrop-filter: blur() — как он работает и как его правильно использовать

backdrop-filter размывает не сам элемент, а то, что находится за ним, причём эффект считается на уровне compositing layers, поэтому DOM-логика вроде overflow: hidden может не сработать.

https://habr.com/ru/articles/1057226/
6🔥4😢1
FixCSS: исправляем исторические ошибки в CSS

В CSS Working Group есть список старых проектных промахов, из‑за которых до сих пор приходится вручную обходить поведение вроде box-sizing: border-box в стартовых стилях. FixCSS предлагает починить эти нюансы библиотекой, чтобы не тащить постоянные костыли в код, но с понятным компромиссом по runtime‑стоимости. Если хотите прокачать понимание того, как CSS реально эволюционировал и почему многие практики закрепились, это отличный повод разобраться глубже.

https://master.dev/blog/fixcss/
👍52❤‍🔥1
Тамагочи TAMA-90: тамагочи из 90-х, собранный на JavaScript своими руками

Браузерный симулятор тамагочи по классической схеме яйцо → детёныш → взрослый → старый. Питомец рисуется прямо на canvas без спрайтов: эмоции и контуры получаются математикой и трюком с globalCompositeOperation. Проект разбит на небольшие модули без сборщиков (HTML/CSS + набор скриптов), чтобы легко менять логику мини-игры или UI и не ловить расползание багов.

https://habr.com/ru/companies/ruvds/articles/1057138/
7💩2👍1🔥1
Как получить оффер в Яндекс, Сбер, МТС и другие крутые компании?

На фото ребята из моего комьюнити, где уже больше 220 frontend-разработчиков. Все они успешно устроились в крутые компании и получили офферы от 300 тыс рублей 🫂

👋 Привет, меня зовут Тихон, я действующий Frontend-разработчик и ментор. За руку довожу до оффера в Big Tech и остаюсь рядом на испытательном сроке.

В их жизни больше нет бесконечных скучных созвонов, безуспешных откликов на вакансии, странноватых собесов с вопросами словно ты на олимпиаде.


И у тебя тоже получится 😎

У меня есть канал, где я:
👉 Показываю, как пройти HR-фильтр и превратить отклики в реальные приглашения
👉 Помогаю найти мотивацию и разбираюсь с убеждениями, которые мешают расти
👉 На примерах показываю, как проходить собеседования, включая техничку
👉 Разбираю резюме и делюсь лайфхаками — например, как аккуратно «пинговать» рекрутеров

И регулярно выкладываю полезное:
▪️ Задачи, на которых валятся кандидаты
▪️ Подборка из 100+ каналов с вакансиями для разработчиков
▪️ 100 вопросов, которые помогут тебе на собеседовании
▪️ Чек-лист для проверки своего резюме

Подписывайся: https://t.me/+-Y-h7mIuMJ9hNzBi

Реклама, erid: 2W5zFJmyDYm ИП Галактионов Тихон Витальевич, ИНН 771618975809
💩15👎7🤡3😐2
Ваше приложение может быть просто сайтом

Пример перевода приложения в формат веб страницы: когда установка — бесполезный шаг для пользователя. Через перехват сетевого трафика выясняем схема запросов к API и структура данных, после чего можно собрать компактную защищённую паролем веб-страницу без лишних функций

https://habr.com/ru/companies/ruvds/articles/1060106/
💔42👍2😁1
Когда имеет смысл блокировать главный поток

Кратко о том, когда правило “не тормози main thread” можно нарушать. Разбираем пример screenshot-расширения с сериализацией Base64.

https://smashingmagazine.com/2026/07/when-makes-sense-block-main-thread/
👍4🔥21🤔1
«Вы не знаете CSS»: вопросы о CSS с ответами, версия 2026 года

Проверка знаний CSS в формате вопросов: разбор специфичности с :has(), логики :focus-within, работы rem, inline-grid и нюансов применения margin при разных display и многое другое.

https://habr.com/ru/companies/ruvds/articles/1057086/
🔥6❤‍🔥2👍2
Masonry с анимацией в CSS

display: grid уже умеет раскладку в стиле masonry через grid-lanes. Чтобы получить плавную перестановку без JS-логики, анимируют не сами карточки, а их внутренний слой: он привязывается якорями и двигается за счёт inset: anchor(inside) с transition.

https://master.dev/blog/masonry-with-animation-in-css/
❤‍🔥4👍3