Frontend по-флотски 👨‍💻
4.67K subscribers
268 photos
56 videos
1 file
525 links
Новости, идеи и знания из мира разработки интерфейсов

Контакт: @qmzik
Download Telegram
ESLint 9.0 Beta что появится нового? 🤔

Команда ЕСЛинта выкатила 9.0 бета, не такое мажорное обновление как у старичка, но всё же добавили несколько новых фич и фикc бага

TLDR:
Новые значения по умолчанию для правил no-unused-vars и no-useless-computed-key
Новые проверки в RuleTester
Новое API loadESLint() (позволит интегрировать текущий flat конфиг и старый eslintrc конфиг)

Новость👇
https://eslint.org/blog/2024/02/eslint-v9.0.0-beta.0-released/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥2🔥2🥰2👏1
This media is not supported in your browser
VIEW IN TELEGRAM
Codeium Ai: бесплатный autocomplete кода 🔥

Нейронка, которая поможет тебе в кодинге 👨‍💻

Поддерживает все популярные IDE, можно её юзать бесплатно, но вот за подсказки относительно кодовой базы придется выложить 15💵

Нейронка👇
https://codeium.com/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12💩64🥰4
Готов ворваться в профессию frontend-разработчика?
Для тебя - бесплатный интенсив от технического директора IT-компании! 
Сергей Пономарев расскажет:
- какие технологии интересны заказчикам;
- сколько получает фронтендер и как ему расти;
- как стартануть в этой специальности.
Регистрируйся на онлайн интенсив 👉 здесь
🤡9👍5💩5❤‍🔥4👎3🔥2
Эволюция Vercel Functions 🧑‍🎓

Команда Vercel поделилась мажорной версией Vercel Functions

Vercel Functions — позволяет выполнять вычисления не используя свою инфраструктуру

Улучшили автоматическое масштабирование, теперь до 30.000 для Pro и до 100.000 Enterprise версии одновременно работающих функций или процессов

Поддержка стандартных веб-интерфейсов API, позволит использовать MDN, ChatGPT или других LLM для легкого создания API на основе общего стандарта

Улучшенный параллелизм
Подпись веб-стандартного API
Потоковая передача без конфигурации
Долго выполняющиеся функции
Более быстрый холодный запуск
Автоматически переключение на другой регион

Статья👇
https://vercel.com/blog/evolving-vercel-functions
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥3🔥2
Вышел Vitest 1.3.0 👨‍💻

Vitest — это среда тестирования на базе Vite

Вышла версия 1.3, в которой добавили новый хук onTestFinished, он вызывается после завершения теста, будет полезен при многократно используемой логики, сохранение размера разделенных панелей в локальном хранилище для удобства при перезагрузке между сеансами тестирования

TLDR:
— Новый хук onTestFinished
— Улучшенная обработка параметров CLI
— Оптимизатор отключен по умолчанию из-за проблем со стабильностью
— Улучшенная поддержка режима браузера
— Сохраняет размер разделенных панелей в UI
— Фикс багов

Обновление👇
https://github.com/vitest-dev/vitest/releases/tag/v1.3.0

Vitest👇
https://vitest.dev/
Please open Telegram to view this post
VIEW IN TELEGRAM
12🔥6👍4
Вышел Astro 4.4 🔥

Разработчики Astra выкатили новую версию, го выясним что там нового🤔

TLDR:
Аудит производительности
Теперь тебе будут приходить подсказки как сделать вещи производительнее

Список аудитов
Подъехал UI список аудитов

Улучшена производительность потока
Обнаружили, что ReadableStreams работают медленнее, чем ожидалось, на Node.js, и перенесли Astro на использование AsyncIterable вместо этого при работе на Node.js.

Автоматическое определение размеров изображений со сторонных ресурсов
Появился атрибут inferSize как замена обязательных width и height

Новость👇
https://astro.build/blog/astro-440/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤‍🔥5🔥3💩1
Forwarded from Devs хокку
Дизайнер опять,
Анимаций накрутил,
Ему-то легко.

©Devs хокку
😁28🎉13🔥11
WXT — кроссбраузерный фреймворк для создания веб-расширений нового поколения 🔥

WXT основан на Nuxt и стремится предоставить такой же отличный DX с TypeScript, автоматическим импортом и продуманной структурой

Есть несколько стартовых шаблонов для наших любимых фреймворков: Vue, React, Svelte, SolidJs

Фреймворк👇
https://wxt.dev/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥9❤‍🔥3
Zod — библиотека для объявления и проверки схем на TypeScript👍

Цель Zod'а состоит в том, чтобы исключить дублирование объявлений типов. С его помощью ты один раз объявляешь валидатор, и Zod автоматически выводит статический тип TypeScript. Простые типы легко объединить в сложные структуры данных

Например, Zod позволит тебе анализировать переменные окружения, обережёт тебя от ручных проверок, как на скрине

Библиотека👇
https://zod.dev/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26🔥5❤‍🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Держись, уже почти пятница 🫡

Вот тебе мемасик для повышения настроения 🫶
Please open Telegram to view this post
VIEW IN TELEGRAM
😁28🤮7🤡4👍3🔥2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Крутой эффект при наведении на текст 🔥

Хитрость заключается в использовании :has() для создания эффекта исключения, при котором ты выберешь всех дочерних элементов, кроме того, на который наведен курсор

.details:has(a:hover) *:not(:hover) { opacity: 0.1; }
a:hover { --active: 1; }
.char {
translate: calc(var(--active) * var(--x) * 1%) ... ;
}
.details:has(a:is(:hover, :focus-visible))
*:not(:hover, :focus-visible) {
--opacity: 0.1;
}
.details :is(span, a) {
opacity: var(--opacity, 1);
transition: opacity 0.2s;
}


Для случайных сдвигов можно использовать JS

Элементы будут выглядить примерно так👇
<span class="char" data-char="A" style="--r: -6; --y: -1; --x: -22;">A</span>


И конечно же трансформация при фокусе

a:is(:hover, :focus-visible) { --active: 1; }
.char {
transition: transform 0.25s var(--elastic);
display: inline-block;
transform:
rotate(calc((var(--active) * var(--r)) * 1deg))
translate(
calc((var(--active) * var(--x)) * 1%),
calc((var(--active) * var(--y)) * 1%)
);
}


Пример👇
https://codepen.io/jh3y/pen/NWBdbRP
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24❤‍🔥6👍6👎2
Бесполезный, но интересный совет: calc(infinity) 🤫

Ты можешь использовать calc(infinity) для того, чтобы получить максимально возможное значение, например, для z-index, width, height и т.д.

Практического применения для этого я пока правда не нашел 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
😁39👍74🤡2🤪2
This media is not supported in your browser
VIEW IN TELEGRAM
Оптимизируем YouTube embed в Next.js и не только 👨‍💻

Чуваки из гугла решили сделать библиотечку для Next.js (@next/third-parties), которая будет оптимизировать встраивание сторонних скриптов на Next.js проекты

Пока что они позаботились об встраивании своих эмбедов: YouTube, Google Maps и Google Analytics и уже флексят достижениями

Статья 👇
https://developer.chrome.com/blog/next-third-parties?hl=ru

Видео доклад 👇
https://www.youtube.com/watch?v=zZPNwx0m07U
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤‍🔥6🔥4
Что нового в Chrome 122? 👨‍💻

— Улучшили управление хранилищами с помощью Storage Buckets API
— Небольшие нововведения в девтулзах, в разделе Performance
— Появилась опция unsanitized для Async Clipboard API

Читать 👇
https://developer.chrome.com/blog/new-in-chrome-122

Смотреть 👇
https://www.youtube.com/watch?v=8fWkUNV-eic
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥65❤‍🔥2
С 8 марта вас, девочки 💐💐💐
Please open Telegram to view this post
VIEW IN TELEGRAM
25💋13💘5❤‍🔥4💅2👏1🎉1
arcjet — прослойка безопасности для Next.js и Node.js приложений 👨‍💻

Если тебе нужно защитить твоё детище рейт-лимитом, то arcjet с удовольствием сделает это для тебя 🥳

Проектик молодой, аккуратнее на проде ⚠️

https://arcjet.com/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍32❤‍🔥1🥴1
В Angular теперь можно получать ссылки на компоненты и элементы HTML в виде Signals при помощи функций viewChild/viewChildren и contentChild/contentChildren

https://angular.dev/guide/signals/queries

Пока в стадии developer preview ⚠️
Please open Telegram to view this post
VIEW IN TELEGRAM
16👍5❤‍🔥3😐2
ECMAScript 2024 №1: groupBy 👨‍💻

Потихоньку буду писать про пропоузалы ECMAScript, которые с большой вероятностью появятся в стандарте в 2024 году

Начну с метода groupBy, он появится у объекта Map и Object и будет использоваться для того, чтобы разгруппировать массив на объект по ключам

Вот примерчик группировки массива чисел на чётные и нечётные

Object.groupBy(array, (num, index) => {
return num % 2 === 0 ? 'even': 'odd';
});
// => { odd: [1, 3, 5], even: [2, 4] }


https://github.com/tc39/proposal-array-grouping
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥44👍18❤‍🔥3🐳3
Что нового в Chrome 123? 🧑‍🎓

— CSS функция light-dark(white, black), которая выберет цвет в зависимости от темы пользователя

— Long Animation Frames API позволяет найти перегрузки/блокировки основного потока влияющие на отзывчивость интерфейса

— Service worker Static Routing API позволит во время установки объявить пути, которые всегда будут обслуживаться из сети

https://developer.chrome.com/blog/new-in-chrome-123?hl=ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥8❤‍🔥32