Frontender Libs - обзор библиотек JS / CSS
8.56K subscribers
1.98K photos
720 videos
1 file
231 links
Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Менеджер по рекламе: @Spiral_Yuri

Купить рекламу: https://telega.in/c/sWebDev
Download Telegram
Как вы используете AI-ассистентов в работе?

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

❤️ — Копирую промпт из таски в Jira, а потом копирую ответ из ChatGPT в IDE.

🤔 — Как собеседника. Пока формулирую для нейросети четкий вопрос, сам нахожу ответ.

👉 @sWebDev | #юмор
👍7🤔4👎31
Shine.js

Стандартные тени для текста выглядят статично и не добавляют интерактивности. Библиотека Shine.js оживляет их, создавая динамические тени, которые реагируют на положение курсора или ориентацию устройства.

👉 @sWebDev
2👎2
This media is not supported in your browser
VIEW IN TELEGRAM
Пазл

Реализация интерактивного пазла на GSAP.

👉 @sWebDev
2👍1
Как избежать лишних ререндеров при работе с React Context

Стандартный хук useContext часто вызывает лишние ререндеры, даже если компоненту нужна лишь часть состояния. Статья показывает, как решить эту проблему, создав собственный легковесный Store и хук с селекторами, похожий на useSelector в Redux.

👉 @sWebDev
👍21
Media is too big
VIEW IN TELEGRAM
Moon Lamps

Интерактивная сцена на Ammo.js.

👉 @sWebDev
2👍1
Pressure.js

Взаимодействие с интерфейсом часто ограничено простыми кликами. Pressure.js расширяет эти возможности, добавляя поддержку силы нажатия через Force Touch, 3D Touch и Pointer Pressure.

👉 @sWebDev
2
Композиция хуков

Какие два стандартных хука объединяет в себе useQueryState?

Забыли? Вернитесь к посту от 14.07.2025.

👉 @sWebDev
2
Какие два стандартных хука объединяет в себе useQueryState?
Anonymous Quiz
41%
useState и useEffect.
10%
useContext и useReducer.
43%
useState и useSearchParams.
5%
useMemo и useCallback.
👍4
Какой самый тупой стереотип об айтишниках вы слышали?

👍 — «Вы же программисты, почините мне принтер/телефон/микроволновку».

❤️ — Что мы можем взломать Пентагон за 5 минут с помощью блокнота.

🤔 — Что мы зарабатываем миллионы, просто нажимая на кнопки.

👉 @sWebDev | #юмор
👍10🤔51
Декларативное управление подписками

Стандартная отписка от Observable в ngOnDestroy громоздка и провоцирует утечки памяти.

Пакет @angular/core/rxjs-interop предлагает более чистое решение. Оператор takeUntilDestroyed декларативно связывает жизненный цикл подписки с жизненным циклом компонента. Подписка автоматически завершится при уничтожении компонента. Важным условием его работы является вызов в инъекционном контексте, например, в конструкторе компонента.

import { Component, inject } from '@angular/core';
import { interval } from 'rxjs';
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';

@Component({
selector: 'app-news-feed',
template: '<p>Последнее обновление: {{ time }}</p>',
standalone: true,
})
export class NewsFeedComponent {
time = 0;

constructor() {
interval(1000)
.pipe(takeUntilDestroyed())
.subscribe(value => {
this.time = value;
console.log(`Новое событие: ${value}`);
});
}
}


👉 @sWebDev
👍32
This media is not supported in your browser
VIEW IN TELEGRAM
Pixel notepad

Интерактивный пиксельный блокнот на Draggable.js.

👉 @sWebDev
👍3🤔1
Какой вывод делаем?

👍 — Что в реальном мире иногда приходится идти на компромиссы.

❤️ — Что самый быстрый способ починить код — это его удалить.

🤔 — Что тимлид — уставший человек, которому нужна помощь и, возможно, отпуск.

👉 @sWebDev | #юмор
👍51🤔1
Moveable

Наделить DOM-элементы возможностью свободного перемещения и масштабирования вручную является непростой задачей. Библиотека Moveable инкапсулирует данную сложную логику и содержит готовые инструменты для манипуляции объектами в реальном времени. Этот инструмент отлично подходит для создания интерактивных редакторов, настраиваемых дашбордов или любых приложений с drag-and-drop интерфейсом.

👉 @sWebDev
2
This media is not supported in your browser
VIEW IN TELEGRAM
Landing page with GSAP & Tailwind CSS

Анимация элементов на странице на GSAP.

👉 @sWebDev
3
Как React Fiber улучшает производительность рендеринга

Когда приложение React начинает «тормозить» при больших обновлениях, проблема часто кроется в блокировке основного потока. Статья подробно объясняет, как архитектура React Fiber решает данную проблему. Разбирается, как Fiber позволяет разбивать рендеринг на части и приостанавливать его, чтобы интерфейс оставался отзывчивым. Понимание этого механизма помогает писать более производительный код.

👉 @sWebDev
2
Media is too big
VIEW IN TELEGRAM
Metaballs hero section with ThreeJS

Анимация объектов с эффектом магнетизма на Three.js.

👉 @sWebDev
3👍1
Atropos.js

Интерактивные элементы часто выглядят плоскими и не привлекают внимание. Atropos.js решает эту проблему, создавая трёхмерный параллакс-эффект при наведении курсора. Библиотека помогает добавить глубину карточкам, баннерам и другим блокам, делая интерфейс более живым и запоминающимся.

👉 @sWebDev
👍5👎21
Определение типа

Что представляет собой тип ReactElement в контексте React?

Забыли? Вернитесь к посту от 21.07.2025.

👉 @sWebDev
1
Представьте, что это случилось. На что вы потратите освободившееся время?

👍 — Наконец-то разберу свой бэклог из курсов, книг и собственных проектов.

❤️ — Буду лежать и деградировать с удовольствием.

🤔 — Попробую найти новую работу, которую ИИ пока не заменил.

👉 @sWebDev | #юмор
👍84🤔2