Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
22.1K subscribers
2.57K photos
169 videos
39 files
4.96K links
Все самое полезное для фронтенда в одном канале.

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

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

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

РКН: https://gosuslugi.ru/snet/67a5b6884689c2151c820bb4
Download Telegram
😴 Под капотом JS: как event loop ломает ожидания

Часто мы думаем, что async/await — панацея от блокировок и лагов. Но на самом деле внутри браузера всё куда сложнее: event loop, microtasks, rendering pipeline.

➡️ В карточках разобрались, почему промисы не спасают от тормозов, как работает цикл событий и где фронтендеров поджидают подводные камни.

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

#under_hood #js
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
11👏1
💳 Подборка свежих статей

1️⃣ Кастомизация Keycloak

➡️ Для тех, кто работает с авторизацией. Покажет, почему Freemarker неудобен и как Keycloakify на React/TS упрощает кастомизацию UI.

2️⃣ Бесшовный старт в Angular

➡️ Для фронтендеров на Angular и SPA. Рецепт, как убрать «белый экран» при загрузке и сделать старт плавным.

3️⃣ Отображение четырёхмерного пространства на двухмерную плоскость

➡️ Для любителей графики и математики. Как построить и визуализировать тессеракт в WebGL.

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

#read_watch #react #angular #js
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥1
🔑 Cортировка по нескольким ключам

Когда нужно отсортировать массив объектов сразу по нескольким полям — вместо вложенных if можно сделать так:


const sortBy = (arr, keys) => [...arr].sort((a, b) =>
keys.reduce((res, k) => res || (a[k] > b[k] ? 1 : a[k] < b[k] ? -1 : 0), 0)
);


Где пригодится:

➡️ Сортировка таблиц и списков в UI;

➡️ Подготовка данных из API;

➡️ Фильтры («сначала по категории, потом по цене»).

⚡️ reduce + sort = компактный способ заменить кучу if-else и делать гибкую сортировку по любым ключам.

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

#readme #js
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🌚3🔥21
📂 htmx: быстрый способ оживить интерфейс

Вместо тонны JS-кода можно писать интерактив прямо в атрибутах: hx-get, hx-post, hx-swap, hx-trigger.

➡️ Зачем пробовать:

— Минимум кода, максимум динамики

— Быстрый старт без фреймворка

— Удобно и для пет-проектов, и для прототипов

💡 Не заменит полноценный React/Vue, если нужна сложная логика

➡️ Мини-пример:


<button hx-get="/api/articles" hx-target="#list" hx-swap="innerHTML">
Загрузить статью
</button>

<div id="list"></div>


Запрос уходит на сервер → HTML-фрагмент прилетает и рендерится в #list.

📎 Подробнее

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

#stack #html
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🤔42
Сегодня премьера

В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным«ИИ-агенты: новая фаза развития искусственного интеллекта».

В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.

Это прямой эфир: подключиться можно через лендинг курса.
🌚3😁1
🌪 CSS-баттл

Представим: старт проекта завтра. Что возьмете в основу?

➡️ Tailwind CSS

— Быстрая верстка за счёт утилитарных классов
— Чёткий дизайн-системный язык без лишнего нейминга
— Удобно для больших команд — меньше стиля-разброда

➡️ Styled Components

— Стили прямо в компоненте → чище структура
— Динамика через пропсы без костылей
— Отличная интеграция с React, всё на JS

Голосуем реакциями:

👍 — Tailwind
❤️ — Styled Components

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

#code_battle
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4426🥱9
🌪 useEffect и зависимости

На картинке 3 кейса:

➡️ Забыли проп в deps → эффект не срабатывает при изменении данных

➡️ Положили объект/функцию → эффект запускается каждый ререндер

➡️ Скаляр в deps → всё стабильно, эффект срабатывает ровно при нужном изменении

⌨️ Совет:

— Всегда указывайте все зависимости эффекта

— Если зависимость нестабильна (объект/функция) → мемоизируйте (useMemo, useCallback)

— Примитивы (строка, число) в deps — самый безопасный вариант

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

#hotfix #react
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2🔥2
🧠 Как строить UI-компоненты по принципу атомов, молекул и организмов

Компоненты делятся на уровни:

1️⃣ Атомы — базовые элементы: кнопки, инпуты, иконки.

2️⃣ Молекулы — простые комбинации атомов, например форма поиска.

3️⃣ Организмы — сложные блоки интерфейса, например хедер или карточка товара.

4️⃣ Шаблоны — структура страницы с расставленными организмами, без конкретного контента.

5️⃣ Страницы — финальная реализация шаблонов с реальными данными.

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

— Упрощает повторное использование компонентов

— Делает код предсказуемым и масштабируемым

— Помогает поддерживать дизайн-систему

📌 Atomic Design особенно полезен для больших проектов, где интерфейс постоянно растёт и нужно избегать хаоса в компонентах.

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

#blueprint
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
🪄 Как откатить коммит и не потерять работу

Бывает: сделал коммит слишком рано — что-то забыл или добавил лишнее. Удалять изменения не хочется, а переписывать руками — долго.

Решение:


git reset --soft HEAD~1


➡️ Что произойдёт:

— последний коммит исчезнет из истории,
— все изменения вернутся в staged,
— можно поправить и закоммитить заново.

🧠 Идеально для случаев «ой, рано нажал git commit».

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

#readme #git
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍4🔥1
📌 Разбор интерфейсов: Pinterest

Сегодня смотрим, за счёт чего сетка Pinterest выглядит цельной и удобной.

➡️ Разберем принцип Masonry-layout, способы его реализации и то, почему он стал стандартом для галерей и бесконечных лент.

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

#ux_analysis
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥3
🤟 Апдейт новостей за неделю

➡️ Temporal API в Chrome 144

Наконец-то добавят современный API для работы с датами и временем. Это большой апгрейд по сравнению с Date.

➡️ GitHub Copilot CLI

AI-ассистент теперь работает прямо в терминале: можно генерировать команды, документацию, делать ревью кода.

➡️ TanStack Start v1.0 RC

Новый современный фреймворк на базе TanStack Router подходит к первому стабильному релизу.

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

#release_digest
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1