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

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

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

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

РКН: https://gosuslugi.ru/snet/67a5b6884689c2151c820bb4
加入频道
👨‍💻 Одна React-задача, демонстрирующая ключевые навыки на собеседовании

Андрей Чмелёв, Tech Lead и Full Stack-разработчик, подробно разбирает один из любимых вопросов по фронтенд-разработке на собесе.

Вопрос посвящён созданию небольшого React-компонента, который асинхронно получает данные на основе пропса username. Он кажется простым, но на самом деле показывает много нюансов понимания кандидатом хуков React, сайд-эффектов, race conditions и компромиссов в дизайне.

👉 Читать
💡 console.context() в действии

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

console.context() может помочь в этом. Он является экспериментальным и доступен только в браузерах на базе Chromium, но это хороший шаг в правильном направлении.

1️⃣ Создайте конкретный инстанс логгера для части вашего приложения:

const myComponentLogger = console.context("name-of-my-component");


2️⃣ Затем логируйте сообщения в обычном режиме, используя ваш новый логгер:

myComponentLogger.log("This is a log message from my component");

myComponentLogger.warn("This is a warning message from my component");


3️⃣ При просмотре логов в консоли отфильтруйте сообщения по названию контекста.

#devtools #tip
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🍰 15 полезных JavaScript сниппетов на все случаи жизни

Начинающим разработчикам часто приходится искать быстрые решения для типичных задач, таких как копирование текста в буфер обмена, обработка URL-параметров или управление элементами DOM.

В этой статье мы собрали 15 полезных JavaScript сниппетов, которые помогут значительно упростить работу и ускорить разработку: эти небольшие, но эффективные фрагменты кода пригодятся почти в любом проекте.

🔗 Читать статью
🔗 Зеркало
💡 Три подхода к использованию селектора & в CSS

& — селектор в CSS, теперь поддерживаемый через CSS Nesting, позволяет вкладывать стили в родительский селектор без необходимости использования препроцессоров вроде Sass. Под катом — некоторые нюансы его использования.

👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
Interop 2️⃣0️⃣2️⃣5️⃣: функции, на которых разработчики браузеров сосредоточатся в этом году

Interop — это непрерывный процесс, в ходе которого разработчики браузеров совместно работают над улучшением функций, чтобы больше пользователей могли быстрее их использовать.

В этом году основное внимание уделяется Storage Access API, событиям указателя/мыши, отказу от старых событий мутации, событию scrollend, URLPattern и более тесной интеграции JS/WASM.

➡️ Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
🖼️ Чеклист для tsconfig.json

Перевод гайда Dr. Axel Rauschmayer о настройках TypeScript, определяемых в файле tsconfig.json. Автор затрагивает настройку проектов, в которых все локальные модули являются ESM.

👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
🧑‍💻 Тестирование 10 JavaScript-фреймворков на соответствие HTML

Автор статьи, будучи сторонником чистого HTML, решил проверить корректность HTML-кода, который создают популярные JavaScript-фреймворки. Для этого он запустил 10 фреймворков в базовой конфигурации, оценил HTML-код и выявил ошибки.

🤔 Что в итоге? HTML-код в некоторых фреймворках далек от идеала, но не все так плохо, ведь большинство проблем легко исправить.
👩‍💻 Create React App — официально всё, еще в прошлом месяце

Не тащите его в новые проекты. Актуальная документация по началу проекта — на сайте React.

💻Источник
Please open Telegram to view this post
VIEW IN TELEGRAM
🛡 Поздравляем главных защитников JavaScript-разработки:

▪️ Promise.catch() — верный страж асинхронного фронта. Отважно ловит все ошибки, которые ты забыл обработать.

▪️ === — боевой офицер типизации. Единственный, кто понимает, почему [] == ![] это true, а {} + [] это "[object Object]".

▪️ try/catch — фронтовой медик. Перехватывает раненые исключения и пытается их лечить. Правда, иногда пациент уже в коме из-за undefined is not a function

Какой боец прикрывает ваш тыл в продакшене? Делитесь в комментариях 👇
🧬 Библиотека схем для JavaScript из будущего

ReScript Schema — одна из самых быстрых библиотек парсинга в экосистеме JavaScript, сфокусированная на высокой производительности, малом размере пакета и DX.

Дмитрий Захаров работал над ней три года и утверждает, что она уже превзошла конкурентов по многим параметрам. В статье он объясняет, чем ReScript Schema отличается от Zod, Valibot, Runtypes, Arktype, Typia и Superstruct.

👉 Читать
🎙 463-й выпуск подкаста «Веб-стандарты»

Кого слушаем
: Андрей Мелихов и Вадим Макеев.

⏱️ Таймкоды:

00:00:59 Проблемы ARIA в Shadow DOM
00:15:41 European Accessibility Act
00:36:34 State of React 2024

▶️ Сайт подкаста

#подкасты #новости
🤖 Mastra — фреймворк TypeScript AI от команды Gatsby

Некоторые из разработчиков, стоящих за фреймворком Gatsby, предлагают новый способ создания агентов на базе LLM, которые выполняют различные задачи, используют базы знаний и хранят память. Представьте себе метафреймворк вроде Next.js, но для агентов AI.

👉 Попробовать
👉 Интенсив «Архитектуры и шаблоны проектирования» для middle и senior-разработчиков

Проверьте свои знания, ответив на 8 вопросов – https://proglib.io/w/54258128

🧐 Кому подойдет?
Разработчикам, которые знают любой объектно-ориентированный язык программирования и хотят углубиться в архитектурные паттерны.

🎮 Как проходит обучение?
В течение всего интенсива вы будете создавать игру «Звездные войны» и применять ключевые архитектурные паттерны. В процессе изучите:
– Как строить гибкую архитектуру, которая не замедляет разработку
– Как применять IoC-контейнеры и писать модульные тесты
– Как использовать SOLID за пределами ООП
– Как внедрять CI/CD и снижать технический долг

👉 Подробная программа обучения

А по промокоду MIDDLE до 28 февраля вы получите дополнительную скидку на обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
🌐 Отладка JavaScript в Chrome DevTools для начинающих фронтендеров

Материалов на эту тему много, но для начинающего фронтендера они скорее сложны и завалены лишней, несвоевременной информацией. В этой статье нет ничего такого. 

Роман Андрианов, фронтенд-разработчик из компании «АйТи-Баланс» сосредоточился на базовых вещах, которые понадобятся в настоящих проектах, и отсеял то, что не нужно на первых порах. Минимум текста, много практики и всё на простом языке.

👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🖼️ Выпущена версия Deno 2.2 с улучшениями качества жизни

Команда Deno сделала перерыв в борьбе с Oracle, чтобы выпустить новую многофункциональную версию своего рантайма JavaScript.

Мы получили встроенную интеграцию с OpenTelemetry, обновления линтера, новый интерактивный способ обновления зависимостей, поддержку node:sqlite, TypeScript 5.7, V8 13.4 и многое другое.

👉 Читать или смотреть анонс

#новости
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Как использовать attr() в CSS для столбцов, цветов и размера шрифта

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

Теперь вы можете извлекать значения из HTML-атрибутов, которые на самом деле имеют типы, поэтому, если вы укажете для элемента data-font-size="2,2rem", вы сможете использовать это значение.

👉 Читать гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
🔎 fuite — CLI-инструмент для поиска утечек в веб-приложениях

Простой CLI для автоматизации тестирования утечек памяти, в первую очередь актуально для SPA. Проверяет объекты, event listeners, узлы DOM и коллекции.

💻 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM