Скриншотное тестирование во фронтенде: современный подход к поиску визуальных багов 🧑🎓
Команда Яндекса выпустила статью про скриншотное тестирование: для чего оно, какие проблемы решает и как его готовить на примере своего фреймворка Testplane
https://habr.com/ru/companies/yandex/articles/890548/
#tests
Команда Яндекса выпустила статью про скриншотное тестирование: для чего оно, какие проблемы решает и как его готовить на примере своего фреймворка Testplane
https://habr.com/ru/companies/yandex/articles/890548/
#tests
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3❤🔥1🤮1
Библиотека для анимации Motion теперь поддерживает VueJS 🫰
Сделали всё довольно сексуально, я их фанат
Подробнее👇
https://motion.dev/blog/introducing-motion-for-vue
Офф. дока👇
https://motion.dev/docs/vue-animation
#vue
Сделали всё довольно сексуально, я их фанат
<motion.button
:initial="{ opacity: 0 }"
:whileHover="{ backgroundColor: 'rgba(220, 220, 220, 1)' }"
:whilePress="{ backgroundColor: 'rgba(255, 255, 255, 1)' }"
:whileInView="{ opacity: 1 }"
/>
Подробнее
https://motion.dev/blog/introducing-motion-for-vue
Офф. дока
https://motion.dev/docs/vue-animation
#vue
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20❤🔥2👍1
Помоги выяснить, какие технологии перспективны 👨💻
Бывает трудно определить самому, какие технологии стоят изучения, а какие — мимолетный тренд, на который можно не тратить время. Предсказать тенденции рынка поможет исследование TechRadar. Приглашаю тебя принять в нем участие.
❓Зачем это тебе
Результаты исследования позволят:
• Скорректировать индивидуальный карьерный трек — поймешь, какой инструмент важно изучить, а где ты и так обгоняешь рынок.
• Найти для себя новые инструменты — узнаешь, не прошла ли мимо тебя перспективная технология.
• Первым внедрить актуальные инструменты в работу — сможешь помочь своей компании укрепить лидерские позиции на рынке.
✍️Как поучаствовать
Расскажи о своём стеке технологий в опросе.
Заполнение опроса займет не более 30 минут. Летом организаторы опубликуют результаты в открытом доступе.
Бывает трудно определить самому, какие технологии стоят изучения, а какие — мимолетный тренд, на который можно не тратить время. Предсказать тенденции рынка поможет исследование TechRadar. Приглашаю тебя принять в нем участие.
❓Зачем это тебе
Результаты исследования позволят:
• Скорректировать индивидуальный карьерный трек — поймешь, какой инструмент важно изучить, а где ты и так обгоняешь рынок.
• Найти для себя новые инструменты — узнаешь, не прошла ли мимо тебя перспективная технология.
• Первым внедрить актуальные инструменты в работу — сможешь помочь своей компании укрепить лидерские позиции на рынке.
✍️Как поучаствовать
Расскажи о своём стеке технологий в опросе.
Заполнение опроса займет не более 30 минут. Летом организаторы опубликуют результаты в открытом доступе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3❤🔥1
Apple официально подтвердила, что Safari переходит на движок Chromium 🤯
Мне не верится, что пишу это, но в своём интервью Jen Simmons подтвердила, что они переводят WebKit в режим поддержки и занимаются разработкой нового функционала уже на базе нового для них движка
Выпустить новый браузер планируют уже в начале 2026 года🚀
Подробнее👇
Перевод интервью
Мне не верится, что пишу это, но в своём интервью Jen Simmons подтвердила, что они переводят WebKit в режим поддержки и занимаются разработкой нового функционала уже на базе нового для них движка
Выпустить новый браузер планируют уже в начале 2026 года
Подробнее
Перевод интервью
Please open Telegram to view this post
VIEW IN TELEGRAM
😁82🤡31🎉25🔥7👍5😢5🫡3🤯2
Media is too big
VIEW IN TELEGRAM
Gemini Code — бесплатный копайлот от гугла 🧑🎓
Плагин доступен в VS Code, Jestbrains IDE и в Github
Супер нового ничего не умеет, по ощущениям что-то среднее на рынке
https://codeassist.google/products/individual/
Плагин доступен в VS Code, Jestbrains IDE и в Github
Супер нового ничего не умеет, по ощущениям что-то среднее на рынке
https://codeassist.google/products/individual/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3❤🔥2
Zod 4 в бете: что там нового? 🚀
1. Производительность и размер
— Ускорение парсинга: строки — ×2.6, массивы — ×3, объекты — ×7.
— Сокращение инстанцирований TypeScript с 25 тыс. до 1.1 тыс. (в 20 раз), что ускоряет компиляцию.
— Уменьшение размера ядра: с 12.47 КБ (Zod 3) до 5.36 КБ (Zod 4), а с
2. Новые API
—
—
—
3. Улучшения для TypeScript
— Упрощённые дженерики, что предотвращает "взрывы инстанцирования" при цепочках
— Поддержка циклических типов через геттеры в
4. Метаданные и JSON Schema
— Система метаданных через
— Нативная конвертация в JSON Schema через
— Обработка ошибок и локализация
— Новая функция
—Удалены устаревшие методы (
— Поддержка интернационализации через API locales (пока доступен только английский).
4. Обратная совместимость
— Устарели:
— Удалены
Для миграции стоит обратить внимание на изменения в API (например, различия
1. Производительность и размер
— Ускорение парсинга: строки — ×2.6, массивы — ×3, объекты — ×7.
— Сокращение инстанцирований TypeScript с 25 тыс. до 1.1 тыс. (в 20 раз), что ускоряет компиляцию.
— Уменьшение размера ядра: с 12.47 КБ (Zod 3) до 5.36 КБ (Zod 4), а с
@zod/mini
— до 1.88 КБ (в 6.6 раз меньше).2. Новые API
—
z.interface()
: точное управление опциональными свойствами и поддержка рекурсивных типов без кастов—
z.templateLiteral()
: валидация строк на основе шаблонных литералов TypeScript.—
z.stringbool()
: преобразование строковых "логических" значений (например, "true"/"false") в boolean.3. Улучшения для TypeScript
— Упрощённые дженерики, что предотвращает "взрывы инстанцирования" при цепочках
.extend()
и .omit()
.— Поддержка циклических типов через геттеры в
z.interface()
(например, для деревьев или ORM-схем).4. Метаданные и JSON Schema
— Система метаданных через
z.registry()
для связи схем с дополнительной информацией.— Нативная конвертация в JSON Schema через
z.toJSONSchema()
, включая поддержку глобального реестра z.globalRegistry
.— Обработка ошибок и локализация
— Новая функция
z.prettifyError()
для форматирования ошибок в читаемый вид.—Удалены устаревшие методы (
.format()
, .flatten()
), заменены на z.treeifyError()
.— Поддержка интернационализации через API locales (пока доступен только английский).
4. Обратная совместимость
— Устарели:
z.promise()
, z.nativeEnum()
, z.string().email()
(рекомендуется z.email()
).— Удалены
errorMap
, invalid_type_error
, required_error
— заменены на унифицированный параметр error
.Для миграции стоит обратить внимание на изменения в API (например, различия
z.object()
и z.interface()
) и обновить обработку ошибок. Полный список изменений — в миграционном гайде.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍3❤🔥2
Что нового в Chrome 135? 🧑🎓
—
— Атрибуты
— Новая функция shape() в CSS
Подробнее👇
https://developer.chrome.com/blog/new-in-chrome-135
—
::scroll-button()
и ::scroll-marker()
Большой шаг к возможностям каруселек на чистом CSS
https://developer.chrome.com/blog/carousels-with-css?hl=ru
— Атрибуты
command
и commandfor
Замена popovertarget и popoveraction с большими возможностями не привязанных к popover'ам
https://developer.chrome.com/blog/command-and-commandfor
— Новая функция shape() в CSS
shape() используется для определения формы для свойств clip-path и offset-path
https://developer.mozilla.org/en-US/docs/Web/CSS/basic-shape/shape
Подробнее
https://developer.chrome.com/blog/new-in-chrome-135
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍4❤🔥1👎1
Вышел Nuxt 3.17 🧑🎓
Что там нового?
Улучшения загрузки данных
— Единое кэширование: все вызовы
— Реактивные ключи: ключи запросов могут быть computed-рефами или функциями-геттерами. При изменении значения автоматически выполняется новый запрос, а старые данные очищаются, если они больше не используются
— Оптимизированный рефетчинг: при нескольких компонентах, следящих за тем же источником, при изменении зависимостей выполнится лишь один сетевой запрос, и все компоненты обновятся одновременно
Новые встроенные компоненты
—
— Улучшенный
Маршрутизатор
— Проп
Индикатор загрузки
— Новые пропы у
https://nuxt.com/blog/v3-17
#vue #nuxt
Что там нового?
Улучшения загрузки данных
— Единое кэширование: все вызовы
useAsyncData
и useFetch
с одним и тем же ключом теперь разделяют общий ref, что исключает рассинхрон между компонентами при обновлении данных— Реактивные ключи: ключи запросов могут быть computed-рефами или функциями-геттерами. При изменении значения автоматически выполняется новый запрос, а старые данные очищаются, если они больше не используются
— Оптимизированный рефетчинг: при нескольких компонентах, следящих за тем же источником, при изменении зависимостей выполнится лишь один сетевой запрос, и все компоненты обновятся одновременно
Новые встроенные компоненты
—
<NuxtTime>
— безопасное отображение времени при SSR, предотвращает гидрационные рассинхроны; принимает различные форматы времени и одинаково работает на сервере и клиенте— Улучшенный
<NuxtErrorBoundary>
теперь как SFC предоставляет в слоте error объекты error
и clearError
, что даёт гибкий контроль обработки ошибок в шаблонах Маршрутизатор
— Проп
trailingSlash
у <NuxtLink>
позволяет явно задавать, будет ли в ссылке заключительный слеш (например, <NuxtLink to="/about" trailing-slash>
даст /about/
)Индикатор загрузки
— Новые пропы у
<NuxtLoadingIndicator>
: hideDelay
( задержка перед скрытием индикатора) и resetDelay
(задержка перед сбросом его состояния)https://nuxt.com/blog/v3-17
#vue #nuxt
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍7👎3❤1❤🔥1
Используй строковые шаблоны в TS по максимуму, чтобы провалидировать значение и уменьшить шанс ошибиться в будущем 🧑🎓
#typescript
#typescript
Please open Telegram to view this post
VIEW IN TELEGRAM
👍68🔥20❤🔥4❤1
Yandex Open Source объявил итоги второго сезона грантов
Из проектов, которые получили поддержку, отмечу эмулятор для запуска классических DOS-программ — js-dos (можно фаниться в думе в браузере, лол) и полезно-перспективный i18n-unused для поиска и удаления неиспользуемых переводов при билде
В этом сезоне 12 проектов получили гранты от компании (фронтенд, кстати, входит в трек разработки), респект за поддержку опенсорса. Без таких инициатив, на самом деле, довольно сложно продвигать свой проект, хотя многие из них — действительно стоящие
https://habr.com/ru/companies/yandex/articles/909186/
Из проектов, которые получили поддержку, отмечу эмулятор для запуска классических DOS-программ — js-dos (можно фаниться в думе в браузере, лол) и полезно-перспективный i18n-unused для поиска и удаления неиспользуемых переводов при билде
В этом сезоне 12 проектов получили гранты от компании (фронтенд, кстати, входит в трек разработки), респект за поддержку опенсорса. Без таких инициатив, на самом деле, довольно сложно продвигать свой проект, хотя многие из них — действительно стоящие
https://habr.com/ru/companies/yandex/articles/909186/
🔥12❤🔥2❤1👍1
Недавно Google презентовала Gemini-2.5 Preview, которая уже успела обогнать всех на WebDev Arena 🚀
https://web.lmarena.ai/leaderboard
#ai
https://web.lmarena.ai/leaderboard
#ai
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥3👍2❤1
Представляем Figma Make: новый способ тестирования, редактирования и подсказки дизайна 💎
Появился AI в фигме, который может делать дизайн и оживлять макеты, а в будущем и кодить научится!
Перевёл оф. статью от команды Фигмы👇
https://habr.com/ru/articles/912880/
#figma
Появился AI в фигме, который может делать дизайн и оживлять макеты, а в будущем и кодить научится!
Перевёл оф. статью от команды Фигмы
https://habr.com/ru/articles/912880/
#figma
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Представляем Figma Make: новый способ тестирования, редактирования и подсказки дизайна
Эта статья — перевод оригинальной статьи « Introducing Figma Make: A new way to test, edit, and prompt designs » Также я веду телеграм канал « Frontend по‑флотски », где рассказываю...
🔥7❤🔥4👍1
Вышел Angular v20 ⚡️
Хайлайты:
— Стабилизация API, таких как
— Улучшенная отладка с помощью Angular DevTools и партнерство с Chrome для создания пользовательских отчетов по Angular непосредственно в Chrome DevTools
— Улучшение работы разработчиков благодаря обновлению руководства по стилю, проверке типов и поддержке языковых служб для привязок хостов, поддержке немаркированных литеральных выражений шаблонов в шаблонах, замене горячих модулей шаблонов по умолчанию и многое другое.
— Продвижение в разработке GenAI с помощью руководств и видеороликов llms.txt и angular.dev для создания приложений генеративного ИИ
— Запущен запрос на комментарии по поводу официального талисмана для Angular
https://blog.angular.dev/announcing-angular-v20-b5c9c06cf301
P.S. статья большая, нет времени перевести, к сожалению
#angular
Хайлайты:
— Стабилизация API, таких как
effect
, linkedSignal
, toSignal
, инкрементная гидратация, настройка режима рендеринга на уровне роута и продвижение zoneless в предварительную версию для разработчиков— Улучшенная отладка с помощью Angular DevTools и партнерство с Chrome для создания пользовательских отчетов по Angular непосредственно в Chrome DevTools
— Улучшение работы разработчиков благодаря обновлению руководства по стилю, проверке типов и поддержке языковых служб для привязок хостов, поддержке немаркированных литеральных выражений шаблонов в шаблонах, замене горячих модулей шаблонов по умолчанию и многое другое.
— Продвижение в разработке GenAI с помощью руководств и видеороликов llms.txt и angular.dev для создания приложений генеративного ИИ
— Запущен запрос на комментарии по поводу официального талисмана для Angular
https://blog.angular.dev/announcing-angular-v20-b5c9c06cf301
P.S. статья большая, нет времени перевести, к сожалению
#angular
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19👎8❤🔥5❤3😁3🔥1🤨1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥13👍6💩2🔥1🥱1
Новый способ стилизации отступов в CSS 🚀
Совсем скоро нам станет чуточку проще🥺
https://habr.com/ru/articles/918084/
Совсем скоро нам станет чуточку проще
https://habr.com/ru/articles/918084/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17😱4❤3👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Цитата CEO NuxtLabs:
Мы присоединились к компании, которая разделяет наши ценности и помогает нам идти дальше без ущерба для того, что делает Nuxt особенным. Наша команда по работе с открытым исходным кодом успешно развивается, и мы продолжим работу над Nuxt и Nitro с тем же вниманием и заботой. Проекты остаются под лицензией MIT. Дорожная карта остается публичной. Сообщество остается в центре внимания.
Подробнее
https://vercel.com/blog/nuxtlabs-joins-vercel
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔14👍9👎8❤4😁3🤯2🤡2🥴2
Вышел Nuxt 4: что там нового? 🧑🎓
Релиз был с фокусом на DX и стабильную работу фреймворка, поэтому фич особо нет
🗂 Новая структура папок
🎨 Обновленные UI шаблоны
🔄 Умное получение данных
🦾 Улучшенный опыт работы с TypeScript
⚡️ Более быстрый CLI и разработка
Релиз был с фокусом на DX и стабильную работу фреймворка, поэтому фич особо нет
Самое заметное изменение касается организации проектов. Код приложения теперь по умолчанию находится в каталоге app/:
my-nuxt-app/
├─ app/
│ ├─ assets/
│ ├─ components/
│ ├─ composables/
│ ├─ layouts/
│ ├─ middleware/
│ ├─ pages/
│ ├─ plugins/
│ ├─ utils/
│ ├─ app.vue
│ ├─ app.config.ts
│ └─ error.vue
├─ content/
├─ public/
├─ shared/
├─ server/
└─ nuxt.config.ts
Это помогает отделить ваш код от node_modules/ и .git/, что ускоряет работу с файлами (особенно в Windows и Linux). Кроме того, это даёт вашей IDE более чёткое представление о том, работаете ли вы с клиентским или серверным кодом.
Стартовые шаблоны Nuxt имеют совершенно новый внешний вид, с улучшенной доступностью, заголовками по умолчанию и усовершенствованными шаблонами.
Мы улучшили работу useAsyncData и useFetch. Несколько компонентов, использующих один и тот же ключ, теперь автоматически обмениваются данными. Также реализована автоматическая очистка при отмонтировании компонентов, и вы можете использовать реактивные ключи для повторного извлечения данных при необходимости. Кроме того, мы предоставили вам больше контроля над использованием кэшированных данных. Некоторые из этих функций уже доступны в младших версиях Nuxt v3, поскольку мы внедряли их постепенно. В Nuxt v4 появились другие значения по умолчанию, и мы планируем продолжить работу над этим уровнем данных в ближайшие дни.
Nuxt теперь создаёт отдельные TypeScript проекты для кода приложения, кода сервера, папки shared/ и кода билдера (но как разработчику тебе нужен лишь один tsconfig в корне твоего проекта). Это должно улучшить автокомплит, повысить точность определения типов и уменьшить количество запутывающих ошибок при работе в разных контекстах.
Параллельно с выпуском версии 4 мы работали над ускорением @nuxt/cli.
Более быстрый холодный запуск — запуск сервера разработки происходит заметно быстрее.
Кэш компиляции Node.js — автоматическое повторное использование кэша компиляции v8.
Нативный мониторинг файлов — использование API fs.watch для экономии системных ресурсов.
Обмен данными через сокеты — CLI и сервер разработки Vite теперь взаимодействуют через внутренние сокеты, а не через сетевые порты, что снижает накладные расходы, особенно в Windows.
Сочетание этих улучшений может существенно улучшить вашу повседневную работу над разработкой, и мы планируем ещё больше.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👍8❤3❤🔥3👎1💩1
Извини, что пропал, дорогой мой друг 🙈
Я просто уже как 3 недели исследую Кольский полуостров, лазаю по горам и заповедникам, пытаюсь жить эту жизнь🤪
На фото Хибины — крупнейший горный массив на Кольском, больше фоточек будет в комментах☺️
С полезной фронтендерской инфой вернусь на следующей неделе, обещаю!
P.S. если есть кто из Мурманска, то можно будет встретиться на следующей неделе
#life@frontend_pasta
Я просто уже как 3 недели исследую Кольский полуостров, лазаю по горам и заповедникам, пытаюсь жить эту жизнь
На фото Хибины — крупнейший горный массив на Кольском, больше фоточек будет в комментах
С полезной фронтендерской инфой вернусь на следующей неделе, обещаю!
P.S. если есть кто из Мурманска, то можно будет встретиться на следующей неделе
#life@frontend_pasta
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥29🔥17👍11❤3👏1
Frontend по-флотски 👨💻
Недавно Google презентовала Gemini-2.5 Preview, которая уже успела обогнать всех на WebDev Arena 🚀 https://web.lmarena.ai/leaderboard #ai
GPT-5 обогнал всех, кто уже пользуется? Как вам?
👎23🔥6💩5👏2🤯1🤡1🥴1
🎯Podlodka React Crew #3 — сезон о паттернах и практиках фронтенда
Как писать продуманный и масштабируемый фронтенд с помощью React? Какие паттерны реально работают, а какие — мода ради моды?
В новом сезоне Podlodka React Crew обсуждаем архитектуру, производительность, нестандартные layout'ы, системный подход к интервью и многое другое.
📌 В программе:
• Паттерны анимаций с View Transition API
• Проверка AI-ассистентов на реальных задачах
• Глубокое погружение в архитектуру React Hooks
• Практика layout'ов вне CSS Grid и Flexbox
• System Design для фронтендера: как не завалить интервью
💡Все доклады — с практикой, кейсами и интерактивом.
📆 Реактим с 25 по 29 августа. Бегом за билетами: http://podlodka.io/reactcrew
Как писать продуманный и масштабируемый фронтенд с помощью React? Какие паттерны реально работают, а какие — мода ради моды?
В новом сезоне Podlodka React Crew обсуждаем архитектуру, производительность, нестандартные layout'ы, системный подход к интервью и многое другое.
📌 В программе:
• Паттерны анимаций с View Transition API
• Проверка AI-ассистентов на реальных задачах
• Глубокое погружение в архитектуру React Hooks
• Практика layout'ов вне CSS Grid и Flexbox
• System Design для фронтендера: как не завалить интервью
💡Все доклады — с практикой, кейсами и интерактивом.
📆 Реактим с 25 по 29 августа. Бегом за билетами: http://podlodka.io/reactcrew
❤6🔥3👍1