Последние посты

Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
23 сент., 10:33
👩💻 Что нового в Chrome 154🔴 <iframe> теперь может подстраиваться под содержимое Больше не обязательно вручную измерять высоту через postMessage() — появился frame-sizing: content-height.🔴 text-decoration-inset Позволяет управлять началом и концом underline, overline и line-through — вплоть до анимированных эффектов без дополнительных элементов и градиентов.🔴 scroll-marker-group стал гибче Появились режимы links и tabs, которые задают не только поведение маркеров, но и порядок фокуса и accessibility-семантику.🔗 Ссылка на блог📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#release_digest


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
22 сент., 08:04
🔴 Нужно дать пользователю подсказки, но при этом оставить возможность ввести своё значение? Тут пригодится <datalist>.Он связывается с <input> и показывает набор вариантов, которые можно выбрать или использовать как подсказки:<label for="browser">Браузер:</label><input list="browsers" id="browser"><datalist id="browsers"> <option value="Chrome"> <option value="Firefox"> <option value="Safari"> <option value="Edge"> </datalist>Главное отличие от <select>:🟡 <select> ограничивает выбор значениями из списка; 🟡 <datalist> предлагает варианты, но не запрещает ввести своё значение.
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
21 сент., 13:32
🧠 React уже не приносит удовольствия?В 2026 разработчики всерьёз начинают спрашивать:а точно ли React/Next — лучший путь?❤️ — React всё ещё топ 🔥 — давно пора попробовать другое 👍 — главное не фреймворк, а руки💬 А вы бы начали новый проект без React?📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#code_battle


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
20 сент., 12:03
🤔 Вопрос с собеседованияЧто выведет этот код?❤️ — undefined 🔥 — "Alex" 👍 — "Max" 🤔 — будет ошибка👇 Правильный ответ (нажми, чтобы прочитать):После delete admin.name собственного свойства name у admin больше нет. Но admin создан через Object.create(user), поэтому при обращении к admin.name JavaScript ищет свойство в прототипе и находит "Alex".📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#career_merge


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
19 сент., 12:01
📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#pixel_pause


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
18 сент., 10:03
🤔 Вопрос с собеседованияЧто выведет этот код?❤️ — 42 и 42 🔥 — 42 и undefined 👍 — undefined и undefined👇 Правильный ответ (нажми, чтобы прочитать):42 undefinedОбычная функция получает this в зависимости от способа вызова:obj.regular();Здесь this указывает на obj, поэтому возвращается 42.Стрелочная функция не имеет собственного this. Она берёт его из внешнего контекста, где объект создавался. Поэтому this.value не относится к obj и обычно даёт undefined.


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
17 сент., 15:27
📎 Шпаргалка по фронтендуЭтот документ объединяет ключевые темы, техники и механизмы, которые лежат в основе современной фронтенд-разработки.➡️ В нём собраны объяснения, примеры и практические заметки, помогающие быстро освежить знания, разобраться в устройстве веб-технологий и подготовиться к выполнению задач или прохождению собеседований.📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#readme
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
16 сент., 10:49изменён
💛 Шрифт, который превращает текст в графикиDatatype — необычный шрифт из Google Fonts, который умеет отображать данные прямо в тексте.🟡 Например:{b:10,25,7,95}🟡 превращается в мини-диаграмму, а такие конструкции позволяют создавать спарклайны, бары и прогресс-бары:{l:33,46,13,13,89} {p:70}Никаких Canvas, SVG или chart-библиотек — достаточно подключить шрифт и использовать специальный синтаксис.Подойдёт для небольших визуализаций в документах, презентациях, таблицах и интерфейсах.🔗 Ссылка📍 Навигация: [Вакансии]


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
15 сент., 10:31
⭐️ Шпаргалка по Grid alignmentЕсли вы хоть раз путались между justify- и align- — вы не один. Где ось, где контент, где items — в голове это часто смешивается, особенно в реальных макетах.🔜 Что внутри:— разница между justify-content и justify-items — как работает align-content vs align-items — все ключевые значения: start, end, center, stretch, space- — наглядно по осям📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#readme #css
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
14 сент., 21:01изменён
😭 Как не потратить недельный лимит AI-кодинга за три дня?Разберём на вебинаре, как тратить меньше на AI-агентов — без потери качества кода.🔘 Поговорим о том:— когда дорогая модель действительно нужна, а когда хватит дешёвой; — сколько стоит один прогон и куда уходят токены; — какие задачи можно отдавать субагентам; — как настроить маршрутизацию моделей; — что проверять в AI-коде перед merge.✏️ Покажем всё на конкретных цифрах и вживую: сравним расходы до и после.⬇️ 17 сентября, 19:00 МСК ⬇️ 1,5 часа · бесплатно ⬇️ Арсений Харланов и Олег Лайок💬 Пишите в комментариях, где упираетесь в лимиты и на что уходят деньги. Самые залайканные вопросы


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
14 сент., 18:53
💡 Собеседования всё чаще затрагивают тему оформления истории коммитовОт того, как вы пишете сообщения в Git, зависит работа CI, ревью и прозрачность релизов.➡️ В карточках короткий разбор семантических коммитов:— зачем коммитам задают строгую структуру; — какой формат используют современные команды; — примеры, которые показывают уровень разработчика.📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#career_merge #middle #senior




Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
14 сент., 07:05
А вы уже забрали свой подарок ко Дню программиста?Мы в Tproger вместе с нашими друзьями собрали целую коробку подарков к вашему профессиональному празднику. Переходите по ссылке, трясите коробку и забирайте свой презент: https://tprg.ru/El3M


Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
13 сент., 17:01
кто… 👨🦳👨🦳📍 Навигация: [Вакансии]🐸 Библиотека фронтендера#pixel_pause
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
13 сент., 16:03
🌸 Вселенная намекает: пора уже начать этот курсС 14 сентября цены в Proglib Academy вырастут на 20% 👀Так что если курс давно ждёт своего часа — лучше не откладывать ещё на месяц 😏📍 Выбрать курс
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
12 сент., 15:51
🔥 Debounce на одной строкеКогда пользователь вводит текст в поиск или изменяет размер окна — запросы летят десятками. Debounce откладывает выполнение функции до тех пор, пока события не прекратятся.const debounce = (fn, ms) => { let timer; return (...args) => { clearTimeout(timer); timer = setTimeout(() => fn(...args), ms); }; };// Использование const handleSearch = debounce((value) => { console.log('Поиск:', value); }, 300);// В React <input onChange={(e) => handleSearch(e.target.value)} />
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
12 сент., 14:02
🌞 Готовим вебинар про AI в разработке и хотим сделать его максимально полезнымЧто реально хочется разобрать? Где чаще всего застреваете? Что пробовали, но так и не получилось нормально внедрить?🤩 Пишите вопросы в комментариях — самые залайканные разберём на вебинаре в первую очередь.Задавайте всё, что давно хотелось спросить 📍📍 Навигация: [Вакансии]🐸 Библиотека фронтендера
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
11 сент., 15:21
👩💻 Вышел React 19.3 — и в нём сразу несколько интересных изменений:🟡 <ViewTransition> теперь stable. React умеет анимировать появление, удаление, перемещение и изменение элементов через браузерный View Transition API.<ViewTransition> <Component /> </ViewTransition>Можно задавать разные анимации в зависимости от типа перехода через addTransitionType().🟡 Fragment Refs позволяют работать сразу с группой DOM-узлов, не добавляя лишний wrapper:<Fragment ref={fragmentRef}> <Heading /> <Heading /> </Fragment>Через FragmentInstance можно управлять событиями, фокусом, наблюдением за видимостью и скроллингом.🟡 use(browser()) — способ явно исключить компонент из SSR, если ему нужны browser-only API вроде localStorage или локального часового пояса.




Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
10 сент., 12:05
🤩 Библиотеки, которые JavaScript уже умеет заменятьНекоторые привычные npm-пакеты сегодня можно не устанавливать — нужная функциональность уже есть в JS и Web API:url-parse → new URL() left-pad → ''.padStart() lodash.last → arr.at(-1) uuid → crypto.randomUUID() deepclone → structuredClone() numeral → Intl.NumberFormat() moment → Intl.DateTimeFormat() lodash.get → obj?.prop?.subprop query-string → URLSearchParams()Перед тем как добавлять зависимость, стоит проверить: возможно, браузер уже умеет всё необходимое.📍 Навигация: [Вакансии]🐸 Библиотека фронтендера
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
9 сент., 12:34
💡 Vue.js: не усложняйте v-bindВ Vue часто можно встретить такой код:<UserCard :user="user" :config="config" />🔴 На первый взгляд кажется, что :user="user" и :config="config" избыточны. Но здесь двоеточие — это сокращение для v-bind:<UserCard v-bind:user="user" v-bind:config="config" />🔴 При этом Vue позволяет сократить запись ещё сильнее, если имя пропса совпадает с именем переменной:<UserCard :user :config />То есть Vue сам понимает, что нужно передать значения переменных user и config в одноимённые props.Мелочь, но в компонентах с большим количеством props заметно чище.📍 Навигация: [Вакансии]
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
8 сент., 10:50
🤔 Вопрос с собеседованияЧто выведет этот код?❤️ — 0 1 2 🔥 — 3 3 3 👍 — 0 0 0👇 Правильный ответ (нажми, чтобы прочитать):🔘 Будет:3 3 3var имеет function scope, поэтому все три callback замыкаются на одну и ту же переменную i. К моменту выполнения setTimeout цикл уже закончился, а i равен 3.🔘 Если заменить var на let:

