Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
23.1K subscribers
2.21K photos
124 videos
38 files
4.64K links
Все самое полезное для фронтенда в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/77178ed4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5b6884689c2151c820bb4
加入频道
🚬 TypeScript вне учебников: продвинутая подборка для тех, кто уже в теме

1️⃣ 15 Advanced TypeScript Tips and Tricks You Might Not Know

Автор делится продвинутыми приёмами TypeScript, включая использование infer, шаблонных литералов и других мощных фич.

2️⃣ Thoughts on State Management Libraries in the React Compiler Era

Обзор изменений в управлении состоянием с приходом React Compiler и как это влияет на необходимость использования сторонних библиотек.

3️⃣ Zod: TypeScript-first Schema Validation

Zod предлагает декларативный подход к валидации схем с автоматическим выводом типов, упрощая разработку и повышая надёжность кода.

🐸 Библиотека фронтенда

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Приглашаем на Frontend Mix — бесплатный митап ЮMoney для всех, кто интересуется фронтенд-разработкой 🔥

🕓 24 апреля, в четверг, в 19:00 (мск) приходите на митап в Санкт-Петербурге или подключайтесь онлайн.

Спикеры из ЮMoney и Сбера расскажут, как работают над задачами и улучшают процессы в команде.

Темы докладов:

🟣 Рефакторинг за 10 секунд. Как с помощью консольной утилиты производить автоматизированный рефакторинг крупных приложений за считанные секунды.
🟣 Подходы и практики тестирования во фронтенде. Зачем нужно тестирование во фронтенде, какие стандарты и подходы существуют и как мы применяем их в своей работе.
🟣 Уязвимости фронтенда в финтехе. Топ-3 атаки, или как построить защиту по всем фронтам — от планирования до релиза.
🟣 Анимация до кончиков пальцев. Поговорим про анимацию в целом и на вебе. Рассмотрим все способы сделать анимацию. Узнаем про композитные слои и как их посмотреть в Dev Tools — на примере одинаковых анимаций, но с использованием разных подходов.

Чтобы попасть на митап, нужна регистрация. Все подробности — на сайте Frontend Mix ❤️
Please open Telegram to view this post
VIEW IN TELEGRAM
😳 Топ-вакансий для фронтендеров за неделю

Frontend Developer — удаленка/Офис (Москва/Санкт-Петербург)

Frontend Developer (Vue.js) — от 250 000 ₽, удаленно (Москва)

Разработчик JS (Middle) — от 150 000 ₽ до 300 000 ₽, удаленно (Казань)

Frontend-разработчик — офис (Санкт-Петербург)

Frontend-разработчик — 180 000 - 190 000 ₽, удаленно (Москва)

➡️ Еще больше топовых вакансий — в нашем канале Javascript jobs

🐸 Библиотека фронтендера

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
🔧 Как устранить FOUC

FOUC (Flash of Unstyled Content) — это кратковременное отображение неоформленного HTML перед применением CSS, что может негативно сказаться на пользовательском опыте.

Почему возникает:

📍 Асинхронная загрузка стилей.

📍 Динамические изменения DOM через JavaScript до полной загрузки стилей.

📍 Использование async или defer при подключении скриптов, что может привести к несогласованности в порядке загрузки ресурсов.

Как устранить:

1️⃣ Предзагружаем критичные стили

<link rel="preload" href="/styles/main.css" as="style">

2️⃣ Встраиваем Critical CSS прямо в HTML

<style>
body { margin: 0; font-family: system-ui; }
</style>


Таким образом, мы обеспечиваем мгновенное появление базового оформления без скачков.

3️⃣ Минимизируем блокировки рендера

• Добавляем defer к скриптам
• Переносим второстепенные стили вниз
• Избавляемся от лишних <link> в <head>

4️⃣ Оптимизируем изображения

Пересобираем графику в WebP или AVIF, уменьшаем вес — и пользователь видит контент быстрее.

5️⃣ Переходим на SSR

Используем серверный рендеринг (Next.js, Astro и др.), чтобы отправлять уже отрендеренную страницу, а не заставлять браузер гадать, как это должно выглядеть.

💡Следуя приведённым рекомендациям, вы сможете обеспечить плавное и профессиональное отображение вашего веб-приложения с самого начала.

🐸 Библиотека фронтендера

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Когда сроки горят, а разработчиков не хватает

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

Решение проблемы — задействовать дополнительные ресурсы на аутсорсе или аутстаффе. Например, обратиться в Proglib. Да-да, мы запустили свою студию веб-разработки!

Что мы предлагаем:

• Опытные специалисты для аутстаффа (frontend, backend, DevOps, UI/UX, PM, BA) 

• Полноценная разработка проектов под ключ 

• Гибкое масштабирование команды под потребности клиента 

• Прозрачная коммуникация и регулярная отчетность

Для каждого проекта формируется индивидуальная команда, исходя из конкретных потребностей заказчика.

Заполните форму, чтобы ускорить свою разработку 👉 https://forms.yandex.ru/u/67e548a4eb614622efa0bcb2/
🚫💻 Топ-10 ошибок эволюции интернета: что бы разработчики удалили из современного веба

Сегодняшний интернет — это не только мемы и котики, но и автозапуск видео, всплывающие окна, перегруженный JavaScript, странные архитектурные решения прошлого.

В статье разбираем:

➡️ Какие элементы веба вызывают наибольшую боль у разработчиков

➡️ Почему соцсети, реклама и куки заслуживают изгнания

➡️ Как ошибки типа referer и злоупотребление WordPress превратились в технический долг

➡️ Что бы изменили в JavaScript, если бы можно было откатить всё назад

➡️ Идеи для нового, более логичного и безопасного интернета

Мечты о «перезапуске» веба с чистого листа — это не фантастика, а повод задуматься: а не пора ли нам пересмотреть старые решения?

🔗 Читаем статью по ссылке

🐸 Библиотека фронтендера
Please open Telegram to view this post
VIEW IN TELEGRAM
🔍 Инструмент недели: Lighthouse — карманный инспектор сайта

Если бы у сайтов был техосмотр — Lighthouse был бы тем самым инспектором с линейкой и скептическим выражением лица. Но вместо «у вас тормоза» он говорит «у вас LCP 4.5 сек».

Зачем нужен:

📍 Проверка производительности:

замеряет, насколько быстро твой сайт появляется, становится интерактивным и не убивает пользователя скелетонами на 10 секунд.

📍 SEO и доступность:

проверяет базовые требования поисковой оптимизации: наличие заголовков, мета-описания, канонических ссылок, индексации и пр.

📍 PWA-анализ:

для прогрессивных веб-приложений Lighthouse проводит полный аудит, включая работу оффлайн, наличие manifest.json и service worker.

📍 Профиль UX как на ладони:

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

Как использовать:

1️⃣ Открываем сайт в Chrome, жмём F12 → вкладка Lighthouse

2️⃣ Настраиваем параметры: мобильный/десктоп, какие категории проверять

3️⃣ Жмём «Generate report» и наблюдаем, как твоё творение превращается в 4 цветных кружка

А если хочется как профи:

• Устанавливаем Lighthouse CLI:

npm install -g lighthouse

• И запускаем тест прямо из терминала:

lighthouse https://example.com --view

• Можно даже засунуть это в CI и отгонять плохие коммиты до релиза.

📍 Полезные материалы:

Lighthouse Docs от Google
Сравнение Lighthouse и PageSpeed Insights

🐸 Библиотека фронтендера

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🐏 Апрельские выпуски подкаста PodRocket

1️⃣ Put your database in the browser – с Ben Holmes

Бен Холмс из Warp рассказывает о local-first веб-приложениях — идее, где база данных живёт прямо в браузере.

➡️ Обсуждаются преимущества подхода (низкая задержка, автономность, скорость), технологии вроде SQLite в браузере, WebAssembly, IndexedDB, CRDTs и его собственный движок SimpleSyncEngine.

2️⃣ Ghostty – с Mitchell Hashimoto

Создатель HashiCorp представляет Ghostty — новый терминал, переосмысляющий классический UX.

➡️ Под капотом — libghosty, архитектура кроссплатформенная, с фичами вроде quake-style dropdown, ускоренной рендерингом и расширяемостью. Ghostty подаётся как терминал для современных текстовых интерфейсов.

3️⃣ Vite, frontend tooling & the future – с Evan You

Эван Ю (создатель Vue и Vite) обсуждает эволюцию фронтенд-инструментов: от Vite к VitePlus — новой унифицированной сборочной системе.

➡️ Поднимаются темы Nitro, мульти-рантайм, влияние ИИ и стремление упростить девелоперские пайплайны.

🐸 Библиотека фронтендера

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🌸 WebGPU — графический апгрейд вашего фронтенда

Видели где-то упоминание WebGPU и думали: «Это вообще нужно?» Давайте разберёмся вместе — без скучных теорий, только самое важное и реальные кейсы.

Почему все говорят про WebGPU:

🐁WebGPU даёт браузеру почти тот же уровень доступа к GPU, что и нативным приложениям. Забудьте про огрехи WebGL — теперь можно рендерить сложные 3D-сцены, запускать ML-задачи и серьёзные физические симуляции прямо на клиенте.

Основные понятия, которые пригодятся

🔷 Буферы и шейдеры: поначалу звучит страшно, но на деле это просто набор инструкций для GPU.

🔷 Пайплайны и команды: полный контроль над каждым этапом рендеринга — никакой «чёрной магии».

С чего начать:

➡️ Библиотеки-обёртки:

wgpu для Rust-энтузиастов

Babylon.js с экспериментальной поддержкой WebGPU

— Трио Three.js + WebGPU-рендерер

➡️ Песочницы: запускайте примеры прямо в CodeSandbox или в официальных демках GPUWeb.

Реальные кейсы использования:

🔷 Интерактивные 3D-карты и инфографика

🔷 ML-инференс в браузере — без прокаченного бэкенда

🔷 Прототипы игр с плавной физикой и анимациями

Что вы уже пробовали на WebGPU? ✏️ Пишите в комментариях, скидывайте репозитории и гифки — давайте вместе поднимем уровень фронтенда!

P.S. Если хотите задать вопрос, заполните нашу гугл-форму. Это займет 5 минут.

🐸 Библиотека фронтендера

#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
📌 Команда дня: npx browserslist

Когда твой код вроде работает, но только у тебя — пора вспомнить про browserslist. Эта команда показывает, на каких браузерах действительно должен работать твой проект. Зависит от настроек в package.json или .browserslistrc.

📍 Пример:

npx browserslist

📍 Результат:

chrome 123
edge 120
firefox 124
safari 17.3
ios_saf 17.3

▶️Зачем это нужно:

• Чтобы не поддерживать браузеры, которыми даже твоя бабушка уже не пользуется.

• Чтобы знать, под кого оптимизировать CSS и JS.

• Чтобы не гадать, почему :has() не работает.

▶️Фишка:

Скомбинируй с @babel/preset-env и autoprefixer, и твой билд будет настолько адаптивным, что захочется распечатать его и повесить на стену.

🐸 Библиотека фронтендера

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
💃 Как языки программирования выглядят в стиле Гибли

Мы не могли пройти мимо нашумевшего тренда и попросили ИИ перенести наш любимый язык программирования во вселенную Миядзаки.

Как вам образ? Расскажите в комментариях ↓

😜 Еще больше персонажей из мира айти в стиле Гибли — в нашем канале @proglib
Please open Telegram to view this post
VIEW IN TELEGRAM
🚀 Автоматическая оптимизация React-приложений

21 апреля 2025 года команда React представила релиз-кандидат (RC) React Compiler — инструмента, который автоматически внедряет мемоизацию в вашем коде, улучшая производительность без необходимости ручного использования useMemo, useCallback или React.memo .

Что нового:

➡️ Авто-мемоизация: React Compiler сам определяет, где нужна мемоизация, и внедряет её без вашего участия — меньше лишних ререндеров, больше производительности.

➡️ Объединение ESLint-плагинов: react-compiler теперь встроен в react-hooks (с версии 6.0.0-rc.1) — настройка проще, подсказки умнее.

➡️ Поддержка современных сборщиков: добавлена экспериментальная поддержка swc, что позволяет использовать компилятор без Babel.

⚠️ На что обратить внимание:

— Работает с React 17+, но для версий до 19 нужно подключить react-compiler-runtime и указать минимальную версию в настройках.

— Если код нарушает правила React (например, ref в рендере), компилятор просто пропускает такие места.

— Некоторые проверки (например, ref-in-render) временно отключены, чтобы избежать ложных срабатываний.

🔗 Инструкция как использовать

🐸 Библиотека фронтендера

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM