Category : javascript

javascript
В джунглях флоры: как складывалась архитектура фронтенда

ФЛОРА - это цифровая платформа по управлению дилерским бизнесом со сложной бизнес-логикой. Над ней работают 25+ продуктовых команд и несколько платформенных. Фронтенд системы состоит из более чем 65 микрофронтендов (далее МФ), и их количество постоянно увеличивается: регулярно появляются новые направления, функционал расширяется. Каждый МФ (или группа МФ) может иметь свой роутинг, стейт, набор sharing-модулей и типов. Группы МФ объединяются в целые подсистемы со своим жизненным циклом и экосист…

  • четверг, 12 ноября 2026 г. в 00:00:12
javascript
«Задача о трёх соседях», или динамические сайты на облачном хранилище

Привет, хабровчане! В этой статье хотел бы поднять вопрос, над которым мы с командой ведём дискуссии уже на протяжении нескольких месяцев, а конкретно с февраля этого года, когда я лично столкнулся с неудобствами белых списков.Наверное, глупо рассказывать что единственное и главное неудобство этих самых списков заключается в том, что мобильный интернет ограничивается и вся инфраструктура "вне" отваливается. Логично, что все ресурсы внутри белых списков контролируются некоей организацией…

  • четверг, 12 ноября 2026 г. в 00:00:11
javascript
Статус оплаты обновился, но скринридер об этом не сообщил

Разберём страницу оплаты: сначала появляется текст «Оплата подтверждена», затем — ссылка на закрытый Telegram-канал. Визуально всё работает. Но пользователь экранного диктора может не узнать об изменениях: фокус остался на кнопке, а обновлённый текст находится в другой части страницы.Для таких сообщений подходит role="status". Эта роль задаёт live region с неявным aria-live="polite": сообщение может быть объявлено без переноса фокуса, когда скринридер сможет сделать это без прер…

  • четверг, 12 ноября 2026 г. в 00:00:09
javascript
Как считать просмотры, если контент меняется прямо на экране

Привет, Хабр! Я Самсон Авакян, фронтенд‑разработчик команды Т‑Путешествий в Т‑Банке. Расскажу, как мы собираем просмотры офферов для обучения ML‑модели ценообразования, когда цена и условия в карточках меняются прямо на экране.Делюсь решением на React и TypeScript с использованием Intersection Observer.А еще моя статья — часть проекта «20 в 20», в котором мы рассказываем о жизни наших ИТ‑хабов. Из моего выпуска вы узнаете о южных, ростовских традициях. Какие данные нужно было собратьВыдача отел…

  • четверг, 12 ноября 2026 г. в 00:00:08
javascript
ИИ‑агенты оставили 1,4 млн файлов. Поможет ли лимит в пять агентов?

В Claude Code мне попалась подсказка, которую я описал в исходной заметке: размер агентного процесса можно ограничить прямо в запросе. Например, попросить небольшую команду, разрешить максимум пять агентов или задать размер по умолчанию через /config.Я смотрел на неё с двойственным чувством. Последние месяцы я решал ту же задачу в своём инструменте, который проводит агентную работу от плана до готового изменения в репозитории. Но ограничить число одновременно работающих агентов оказалось лишь о…

  • среда, 11 ноября 2026 г. в 00:00:20
javascript
Движки e‑repa.ru. Часть 3. qt: вопрос к члену предложения и краткий ответ

Во второй части я показал, как js‑движок qb выводит на экран инвентарь английского вопроса и правила его построения: по зонам карточек ученик видит, из каких структур состоит вопрос и из какой зоны берётся каждый элемент. Однако вопрос в qb ученик строит от русской опоры, и тип вопроса уже задан ею: «Кто преподавал химию и физику…?» сам сообщает, что это вопрос к подлежащему. Утвердительного английского предложения, из которого вопрос получается, ученик в qb не видит, а значит, не видит и отнош…

  • среда, 11 ноября 2026 г. в 00:00:19
javascript
Исследование: во сколько обходится AI‑разработка сайта в зависимости от используемых JavaScript‑фре…

Разработчик Нолан Лоусон (Nolan Lawson) сравнил, сколько денег и времени требуется нейросетям для разработки одного веб‑приложения на разных JavaScript‑фреймворках. В тестах самым дорогим вариантом оказался Angular, а самым дешёвым — связка Hono и htmx. Разница в медианной стоимости составила почти два раза.В эксперименте Лоусон поручил Claude Code с моделью Opus 5.5 и высоким уровнем рассуждения разработать каталог покемонов с поиском, фильтрами и реальными данными из PokéAPI. Разработчик пров…

  • среда, 11 ноября 2026 г. в 00:00:18
javascript
Модернизация JavaScript-проекта для моделирования физических экспериментов и роль ИИ в этом

ОглавлениеВведение и описаниеОписание демонстраций и теория по физикеНынешняя версия проектаЗакон сложения сил под углом к другуЗакон гидростатики и аэростатикиМатематический маятникЗатухающие колебания пружинМодернизация проекта и использование ИИИсходное состояниеПереход от модульного паттерна к использованию классовСоздание языковой локализацииИзбавление от setTimeout и переход на механизм requestAnimationFrame для создания анимацийАдаптация под смартфоны и различные разрешения экранаHTML, C…

  • среда, 11 ноября 2026 г. в 00:00:16
javascript
Lighthouse CI: автоматизируем проверку производительности сайта

Проверить производительность веб-приложения через Lighthouse несложно. Но после очередного изменения в коде показатели могут ухудшиться, и если запускать аудит только вручную, такие изменения легко пропустить.При этом производительность влияет не только на скорость загрузки страниц, но и на пользовательский опыт, вовлечённость и конверсию. Она имеет значение и для SEO, например Google использует Core Web Vitals в своих системах ранжирования, хотя хорошие показатели сами по себе не гарантируют в…

  • среда, 11 ноября 2026 г. в 00:00:14