Фронтенд Гайд
7.26K subscribers
615 photos
308 videos
286 links
Канал для фронтендеров, много полезных лайфхаков, фичей, макетов, тестов!

Все представлено в виде готового кода, бери и юзай в своем проекте.

По всем вопросам: @it_dashka
Реклама: https://telega.in/channels/frontend_dev5/card
Download Telegram
⚙️ Поиск на RxJS и Taiga UI

Разбираем, как собрать несколько внешних поисков (люди, ссылки, исходники), скелетоны и обработку ошибок, подключать новые источники без правок UI. Операторы, профит


🔗 Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
В PWA нужен быстрый онлайновый старт, фоновое обновление и оффлайн-фоллбэк. Какую стратегию выбрать для HTML и статических ассетов (rev-hash в именах)?
Anonymous Quiz
38%
HTML: network-first (+fallback); ассеты: cache-first
18%
HTML: cache-only; ассеты: network-only
21%
HTML: stale-while-revalidate; ассеты: network-first
23%
HTML: cache-first; ассеты: cache-first
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Fluid Simulation — Сцена с интересной симуляцией жидкости с текстом.

Сделана на CSS и JavaScript


🔗 Открыть код
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Зачем используется свойство dataset в JavaScript и когда его применять?

Свойство dataset позволяет получать и изменять пользовательские атрибуты data-* у HTML-элементов. Это удобный способ хранить дополнительную информацию прямо в разметке, не перегружая код.

Пример:

<button id="btn" data-user-id="42" data-role="admin">Click me</button>
<script>
const btn = document.getElementById("btn");
console.log(btn.dataset.userId); // "42"
console.log(btn.dataset.role); // "admin"
</script>


📌В этом примере dataset даёт доступ к атрибутам data-user-id и data-role.

dataset удобно использовать для передачи параметров в JS без жёсткой привязки к классам или id: идентификаторы пользователей, статусы элементов, флаги состояния. Это делает код более гибким, читаемым и декларативным.
Please open Telegram to view this post
VIEW IN TELEGRAM
Настраиваете CSP. Нужно запретить любой инлайн-JS, но оставить один критичный инлайн-скрипт, который меняется на каждом ответе. Скрипты грузятся с вашего домена и CDN. Что выбрать?
Anonymous Quiz
32%
script-src 'self' cdn.example.com 'sha256-...' (фикс. хэш)
34%
script-src 'self' cdn.example.com 'nonce-<per-request>'
13%
script-src * 'strict-dynamic'
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Text Illumination — Сцена с анимированным появлением текста.

Сделана на SVG и CSS


🔗 Открыть код
Please open Telegram to view this post
VIEW IN TELEGRAM
В React-списке с контролируемыми <input> можно удалять элементы из середины. Сейчас key — индекс массива. Пользователи жалуются, что текст «переезжает» в соседние строки после удаления. Что делать?
Anonymous Quiz
18%
Обернуть список во фрагмент <>...</>
73%
Давать стабильные key по id сущности и не переиспользовать ключи
1%
Сделать инпуты неконтролируемыми
8%
Добавить React.memo к элементу списка
⚙️ Скриншоты сайта в адаптивную Tailwind верстку

Расскажу, как я накатал Python-скрипт (~200 строк), который из трёх скринов сайта (десктоп/планшет/мобила) собирает одну адаптивную HTML-вёрстку на Tailwind; код, демо и подводные камни.


🔗 Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Shiny call-to-action button — Анимированная кнопка с эффектом при наведении.

Сделана на чистом CSS


🔗 Открыть код
Please open Telegram to view this post
VIEW IN TELEGRAM
Боишься?
😁13
В обработчике клика вы вызываете queueMicrotask(A), затем requestAnimationFrame(B), затем setTimeout(C, 0). В каком порядке вызовутся колбэки относительно ближайшего кадра?
Anonymous Quiz
31%
A → B → C
40%
B → A → C
12%
C → A → B
17%
A → C → B
⚙️ Понимание CSS corner-shape и сила суперэллипса

Покажу, как corner-shape приручает углы — не только округлять, а вырезать, заострять и комбинировать. Разберём примеры, нюансы поддержки и как уйти от SVG/картинок. Будут демки.


🔗 Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Виджет авторизации в <iframe> с домена id.example.com должен получать с сервера его сессионный cookie в кросс-доменном контексте. Какие атрибуты у cookie нужны?
Anonymous Quiz
22%
SameSite=Lax; HttpOnly; Secure
37%
SameSite=None; Secure; HttpOnly
34%
SameSite=Strict; Secure; Path=/
7%
SameSite=None (без Secure)
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 <pixel-canvas> Web Component — Сцена со стильно анимированными карточками

Сделана на CSS, SVG и JavaScript


🔗 Открыть код
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Зачем используется свойство innerHTML в JavaScript и когда его применять?

Свойство innerHTML позволяет получить или изменить HTML-содержимое элемента. Это удобный способ динамически обновлять интерфейс без перезагрузки страницы.

Пример:

<div id="message"></div>
<script>
const box = document.getElementById("message");
box.innerHTML = "<strong>Добро пожаловать!</strong>";
</script>


📌В этом примере innerHTML вставляет HTML-код с тегом <strong> внутрь блока.

innerHTML удобно использовать для обновления текста, вставки шаблонов и генерации списков. Однако важно помнить о безопасности: при работе с пользовательскими данными лучше использовать textContent, чтобы избежать XSS-уязвимостей
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Нужно использовать SharedArrayBuffer в проде. Страница грузит ресурсы с CDN. Какие заголовки и условия требуются?
Anonymous Quiz
30%
COOP: same-origin + COEP: require-corp; ресурсы с CORS или CORP
39%
Только Access-Control-Allow-Origin: * на HTML
13%
Origin-Agent-Cluster: ?1 и X-Frame-Options: DENY
17%
Лишь Content-Security-Policy: upgrade-insecure-requests
🔥 БЕСПЛАТНЫЙ КУРС ПО СОЗДАНИЮ НЕЙРО-СОТРУДНИКОВ НА GPT И ДРУГИХ LLM 🔥

Ищете практический и углубленный курс, чтобы освоить создание нейро-сотрудников? Мы создали курс из 5 объемных занятий. Это именно то, что нужно, чтобы прокачать свои навыки абсолютно бесплатно!

📌 Темы занятий:
1. Введение в мир нейро-сотрудников
2. Как работают LLM и их аналоги
3. Создание базы знаний для нейро-сотрудника (RAG)
4. Тестирование и отладка нейро-сотрудников
5. Интеграция нейро-сотрудников в Production

Вот 5 тем курса - он максимально простой и доступный, общеобразовательный, без какого-либо сложного программирования 📚Прохождение этого курса, скорее всего, займет у вас от 1 до 3 часов

🤖 Присоединяйтесь к нашему бесплатному курсу и разберитесь в этой увлекательной теме с нами!
😁1