21509
Все самое полезное для фронтенда в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/77178ed4 Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5b6884689c2151c820bb4
💡 Шпаргалка по REST API для начинающих
Шесть фундаментальных принципов, которые служат строительными блоками архитектуры REST API:
6️⃣ Клиент-серверная архитектура
2️⃣ Взаимодействие без сохранения состояния
3️⃣ Возможность кэширования
4️⃣ Многоуровневая система
5️⃣ Поддержка кода по требованию
6️⃣ Унифицированный интерфейс
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#readme
💬 Откуда вы берете полезный IT-контент
Интересуют источники, где не только новости, но и практика, разборы и реальные кейсы.
Напишите в комментариях:
— 1–2 канала / автора
— где читаете (TG / Habr / блог / X / GitHub)
— тематика (React, JS, perf, архитектура, CSS и т.д.)
@ник — платформа, тема
🔗 JavaScript: от кода к системной разработке
Внутри:
— архитектура и организация кода
— тестирование: модульное и интеграционное
— отладка и типичные ошибки
— сборка, CI/CD и автоматизация
— подходы к разработке, которые экономят время на дистанции
🧩 React под рукой: вся база в одной шпаргалке
Что внутри:
— JSX и структура React-элементов
— компоненты: props, children, условный рендеринг
— списки, memo и Context
— все ключевые хуки: от useState до useMemo
— class components и lifecycle (на случай легаси)
— error boundaries и обработка ошибок
💻 JavaScript с нуля: понятный вход в разработку
Нашли хороший курс для новичков во фронтенде.
Что внутри:
🔜 синтаксис, переменные, типы данных
🔜 функции, условия, циклы
🔜 работа со строками и базовой логикой
Как устроено обучение:
— всё прямо в браузере: редактор, консоль, тесты
— теория сразу закрепляется задачами
— можно посмотреть решения и разобрать ошибки
— AI подсказывает по ходу, если возникают вопросы
😱 Почему одни анимации «живые», а другие — нет
Один из ключевых приёмов — Squash & Stretch. Объект слегка «деформируется» в движении — и интерфейс начинает ощущаться физическим.
Где это работает:
— SVG-иконки (стрелки, кнопки)
— hover-эффекты
— микровзаимодействия
💡 Лайфхаки:
— не просто увеличивайте элемент → слегка «сужайте» при растяжении
— держите амплитуду в районе 25–50%
— spring-анимации выглядят естественнее
— учитывайте prefers-reduced-motion
⚙️ Минимальный пример (CSS)
<button class="btn">
<svg viewBox="0 0 24 24" class="arrow">
<path class="shaft" d="M 5,12 h 14" />
<path class="tip" d="M 12,5 l 7,7 l -7,7" />
</svg>
</button>
@media (prefers-reduced-motion: no-preference) {
.shaft, .tip {
transition: d 300ms;
}
.btn:hover .shaft {
d: path("M 5,12 h 17"); /* растягиваем */
}
.btn:hover .tip {
d: path("M 15,7 l 7,5 l -7,5"); /* «сужаем» наконечник */
}
}
📌 Сборник алгоритмов на JavaScript
В этом репозитории собраны решения на все случаи: от базовых задач со строками и массивами до продвинутых алгоритмов сортировки и поиска.
➡️ Ресурс подойдёт для практики, подготовки к собеседованиям или как удобная шпаргалка по ключевым алгоритмам.
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#read_watch
🎨 SVG в 3D за пару кликов
Появился опенсорс-инструмент, который превращает обычные SVG-картинки в полноценные 3D-объекты. Их можно крутить, настраивать под себя и сразу вставлять на сайт.
Как это работает:
ℹ️ Загружаете SVG, пиксель-арт или просто описываете идею текстом — на выходе получаете готовую 3D-модель. Дальше можно поиграться с анимацией, текстурами, светом и фоном, а затем выгрузить результат в 4K.
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#stack
Упс 😳
🐸 Библиотека фронтендера
#pixel_pause
🐸 Библиотека фронтендера
#code_challenge
🔥 CSS-селекторы — основа чистой и управляемой верстки
Сохраняйте шпаргалку: здесь собраны основные селекторы, которые нужны в работе чаще всего. Удобно, чтобы быстро освежить базу и не держать всё в голове.
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#readme
🐸 Библиотека фронтендера
#pixel_pause
🦾 Надоело чинить «упавших» ИИ-агентов после каждого микросбоя внешних сервисов?
Анонсируем старт продаж большого курса по AgentOps. Мы собрали опыт десятков разработчиков и сделали программу, которая учит выводить ИИ в стабильный прод.
🗓 Ждем вас 28 апреля в 19:00 МСК на эфире: «Как эффективно управлять контекстным окном LLM в мультиагентных системах и не сливать бюджет на токены».
👉 Кто вещает и в чем польза?
Спикер Кирилл Кухарев (Senior AI Engineer в Raft, спикер AI Conf и Highload++). Он реализовал более 50 коммерческих проектов в GenAI и на вебинаре покажет, как взять под контроль работу нескольких агентов, чтобы они не перекидывали друг другу лишний контекст и не сжигали ваши деньги.
В прямом эфире разберем:
• Как формируется контекст в LLM при маршрутизации между агентами;
• Куда утекают лишние токены и возникает перерасход;
• Практические методы: как сжимать историю, грамотно делить задачи, лимитировать передачу контекста и собирать промпты прямо в процессе запроса пользователя.
🔥 Два способа получить максимум:
1. Приходите на вебинар 28 апреля. Дарим участникам промокод на 5.000 ₽ (работает 3 дня после эфира - это шанс забрать курс по самому низу рынка).
2. Выбирайте Инженерный трек. В подарок к нему идет полный доступ к записям и автопроверкам завершенного курса «Разработка ИИ-агентов».
👉 Занять место на вебинаре и стать профи в AgentOps
🧩 Как рисовать UI без Figma и скринов
Wiretext строит схемы и UI с помощью юникод-символов, в итоге макет получается прямо в тексте, без картинок.
Внутри:
— боксы, стрелки, коннекторы
— слои и группировка
— базовые UI-элементы
— экспорт в Markdown / текст / HTML
— быстро накидать идею без дизайна
— вставить в PR / доку без картинок
— объяснить интерфейс визуально
🙁 Почему ваш бандл тяжелее, чем должен быть
Вы импортируете всего пару значений, но в бандл уезжает весь файл с десятками экспортов. И это не ошибка — для многих бандлеров такое поведение считается нормой.
Автор прогнал один и тот же код через 7 бандлеров И выяснилось, что tree shaking работает нестабильно. В одних случаях лишний код вырезается, в других — спокойно попадает в прод.
❗️ Главный источник проблем — barrel-файлы (index.ts)
import { A } from './constants’
import { A } from './constants/a’
🖥 Git 2.54: что нового в релизе
🔵 Проще править историю
Появилась команда git history (экспериментальная)
🔜 Позволяет:
— быстро поменять сообщение коммита
— разделить один коммит на два
Без перегруженного rebase -i и лишних шагов.
Раньше:
— копировать скрипты в каждый репозиторий
— или городить менеджеры
Теперь:
— описываете хуки прямо в .gitconfig
— можно подключать линтеры, проверки, сканеры
🔜 удобно для команд и пет-проектов
Git начал эффективнее обслуживать репозиторий:
— оптимизирует pack-файлы
— снижает нагрузку без полного gc
🔜 заметно на больших проектах
— git add -p стал удобнее
— git log -L теперь лучше ищет изменения
— retry при 429 Too Many Requests
— удобнее работа с трейлерами (--trailer)
🤔 Вопрос с собеседования
Почему браузер перед запросом иногда отправляет OPTIONS?
👇 Правильный ответ (нажми, чтобы прочитать):
Это preflight-запрос в рамках CORS. Браузер сначала проверяет, разрешён ли запрос — и только потом отправляет основной.
🔴 Когда это происходит:
Если запрос «не простой»:
— есть Authorization или другие кастомные заголовки
— нестандартный Content-Type (например application/json)
— метод вроде PUT, PATCH, DELETE
🔴 Что важно понимать:
— это делает браузер автоматически
— сначала идёт OPTIONS, потом основной запрос
— если сервер не ответил правильно → запрос не уйдёт вообще
💡 Каждый запрос превращается в два, отсюда лишняя нагрузка и задержки.
👍 — знал/а
🔥 — стало понятнее
💼 Щелкаешь такие задачи как орешки? Найди проект с достойной зарплатой тут
🐸 Библиотека фронтендера
#career_merge
Джуны могут спать спокойно 😂
🐸 Библиотека фронтендера
#pixel_pause
😀 Как экономить трафик на API-запросах
Частая проблема — пользователь меняет фильтр или вводит новый запрос, а старые fetch всё ещё летят на сервер.
В итоге:
— Лишняя нагрузка на бэкенд
— Дублирующийся трафик
— Мешанина в результатах
🔵 Решение: отменяйте старые запросы через AbortController.
const c = new AbortController();
fetch('/search?q=cat', { signal: c.signal });
// отмена
c.abort();
🔥 Топ-вакансий недели для фронтендеров
Программист React.js — 70 000 - 220 000 р, удаленно (Переславль-Залесский)
Стажер Vue-developer — от 55 000 ₽, удаленно
Frontend-программист (nuxt/vue.js) — удаленно (Москва)
➡️ Больше офферов в канале: @jsdevjob
🐸 Библиотека фронтендера
Как frontend-разработчику вырасти в ЗП?
День сурка frontend-разработчика выглядит так
Зарплата замерла, задачи — бесконечный повтор, растет только кол-во бессмысленных созвонов
Откликаешься на вакансии — отвечают только ноунеймы, на собесах закидывают странными алгоритмами «на скорость».
И самое бесящее — пока буксуешь, кто-то вокруг спокойно забирает офферы в Яндекс и VK...
Ты тоже можешь получить оффер в компанию, в которой тебя будут ценить и хорошо платить.
📊 Tremor — компоненты React для создания панелей мониторинга
Под капотом у tremor React, Tailwind CSS и Radix UI. Вы можете копировать и вставлять компоненты, либо использовать npm-пакет.
Что внутри:
➡️ Все типичные элементы UI панели мониторинга, такие как диаграммы, индикаторы прогресса, трекеры активности, аккордеоны, таблицы и т. д.
🔗 Ссылка на GitHub
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#stack
⭐️ Чек-лист фронтендера перед релизом
Полезный репозиторий для фронтенд-разработчиков: список всего, что нужно проверить перед запуском проекта.
💡 В чек-листе собраны ключевые пункты — от структуры HTML и подключения шрифтов до оптимизации картинок, производительности, безопасности и SEO.
📑 В каждом разделе есть ссылки на статьи, тулзы и видео для проверки.
🔗 Ссылка на GitHub
🐸 Библиотека фронтендера
#readme
⚡️ Мы рады представить команду экспертов курса AgentOps!
— Дмитрий Антипов расскажет, как грамотно проверить работу AI-моделей
— Курилл Кухарев поделится, почему компаниям выгодно использовать локальные модели и как их развернуть
— Андрей Носов расскажет, как работать с данными и знаниями в AI-системах: построение RAG, выбор подходов к поиску и организация хранения данных
— Антон Будняк разберет, как обеспечить устойчивость сервиса, в котором используется ИИ
— Александр Ошурков расскажет, как оценивать качество работы LLM в backend-сервисах
— Екатерина Трофимов разберет, как проектировать инструменты для AI-агентов и выстраивать взаимодействие с внешними сервисами
Курс для backend-разработчиков, тимлидов и LLM инженеров о том, как внедрять AI-логику в бэкенд IT-продуктов и сохранять стабильность сервиса.
К концу обучения вы получите:
• Структурированный подход к архитектуре и деплою AI-агентов
• Навыки настройки мониторинга, тестирования и контроля расходов на токены
• Разбор сложных инженерных кейсов из реальной практики
🎁 Доступ к материалам курса «Разработка ИИ-агентов» в подарок при покупке Инженерного трека
👉 Все подробности и программа обучения.
🔎 Google начнёт штрафовать за «сломанный Back»
С 15 июня 2026 сайты начнут терять позиции, если кнопка «назад» ведёт не туда, куда ожидает пользователь.
🔴 Как это выглядит в реальности:
Вы открыли страницу из поиска, почитали, нажали Back. И вместо возврата:
— редирект на другую страницу
— лента рекомендаций
— всплывающий экран
— «ещё один шаг» внутри сайта
history.pushState({}, '', '/step’)
window.onpopstate = () => location.href = '/upsell’
— лишние push()
— промежуточные состояния
— реклама
— аналитика
🏃♀️ Уже завтра стартует курс по разработке AI-агентов.
Про AI-агентов часто думают, что это просто модная обертка над джпт для пет-проектов. Кажется, прикрутил API к скрипту и типа готово. А вот и нет! Когда дело доходит до прода, начинаются настоящие проблемы.
Зачем глубоко копать мультиагентные системы, если можно обойтись старым добрым кодом? Как контролировать расходы на токены, чтобы новая фича не разорила бизнес? Как заставить агента работать стабильно и предсказуемо, а не галлюцинировать?
⚙️ Chrome DevTools умеет эмулировать пользовательские настройки CSS
Вы можете проверять, как сайт выглядит для разных пользователей — без смены системы или устройства.
Что можно протестировать:
— тёмную / светлую тему (prefers-color-scheme)
— режим печати (print)
— высокую контрастность (forced-colors, prefers-contrast)
— отключённые анимации (prefers-reduced-motion)
— уменьшенную прозрачность (prefers-reduced-transparency)
— цветовой охват дисплея (color-gamut)
🧩 Интерактивный разбор SVG <path>
<path> в SVG пугает почти всех в первый раз: вместо понятного кода — буквы, числа и ощущение, что перед вами шифр.
Этот гайд хорош тем, что не просто объясняет синтаксис, а показывает логику по шагам. После него становится намного проще читать d и понимать, как из команд собираются линии, кривые и дуги.
🔗 Ссылка на гайд
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#svg #readme
🤔 Вопрос с собеседования
Почему в Redux нельзя вызывать fetch прямо в reducer?
👇 Правильный ответ (нажми, чтобы прочитать):
Reducer — это чистая функция: на входе старый state + action → на выходе новый state и при одинаковых данных результат всегда один и тот же. Это важно, потому что Redux полагается на предсказуемость.
Если добавить внутрь fetch:
— результат будет зависеть от времени и ответа сервера
— появятся побочные эффекты (запросы, ошибки, задержки)
— Redux перестанет нормально дебажиться (time-travel, replay, логирование)
📌 Поэтому разделяют ответственность:
— async (fetch, API) → в thunk / middleware
— reducer → только принимает данные и обновляет state
👍 — знал/а
🔥 — стало понятнее
💼 Щелкаешь такие задачи как орешки? Найди проект с достойной зарплатой тут
🐸 Библиотека фронтендера
#career_merge
👩💻 В Chrome 148 position: sticky начал работать независимо по осям
Раньше sticky ломался в сложных layout’ах: если элемент зависел от одного scroll-контейнера — top и left конфликтовали. Теперь это исправили.
sticky учитывает скролл отдельно по X и Y: колонка фиксируется по горизонтали, header — по вертикали, и всё работает вместе.