RU

Единственный нормальный детектор копипасты требовал JVM. Поэтому я написал свой

Копипаста редко выглядит как копипаста. После переименования переменных, строк и чисел два одинаковых блока спокойно проходят ревью как разный код. Я …

typescriptjavascriptangularvuesveltereactpmdкопипастадублирование кода
Habr
RU

Локализация уже скомпилированных React компонентов в node_modules

🇧🇷 🇨🇳 🇮🇳 Локализуем React не трогая код компонентов React-компоненты из node_modules уже скомпилированы, поэтому внедрить react-i18next в них обычно н…

i18ni18nextлокализацияинтернационализацияreacttypescriptjavascriptviteбандлерпереводы
Habr
RU

Овцеводческая CRM, Узбекистан и .NET 10: семь инженерных историй с граблями

Мы делаем QoyHunter — учётную систему для овцеводческих хозяйств Узбекистана, с витриной животных, доставкой и блогом на соседних поддоменах. С точки …

.net 10asp.net corepostgresqltelegramoauth2oidcreactnginxssragritech
Habr
RU

Нужен ли здесь useEffect? «хороший» React-вариант и мол-вариант здесь один и тот же код

На Хабре вышла хорошая статья «Нужен ли здесь useEffect?»: 12 сценариев из code review, в которых эффект либо не нужен, либо нужен не такой. Я пишу на…

useEffectreactmolреактивностьхукиstate managementfrontendview.tree
Habr
RU

Контракт из кода, клиент из контракта: избавляемся от тройного дублирования в API

Обычно процесс разработки API выглядит так: мы пишем контроллер. Затем каким-то образом его документируем. После чего фронтер, опираясь на такую докум…

openapiopenapi generatorswaggerphpsymfonyreacttypescriptjavascriptaxiosorval
Habr
RU

[Перевод] Как использовать useMemo и useCallback?(спойлер) большинство из них можно удалить

Каково назначение хуков useMemo и useCallback? Какие ошибки и лучшие практики следует при их использовании, и почему удаление большинства из&nbsp…

оптимизацияфронтендuseCallbackuseMemomemoreact
Habr
RU

Микрофронтенды. Стабильная интеграция нескольких SPA-приложений. Часть 2

Привет! В первой части бы поговорили о нашем подходе к мирофронтендам, модульной федерации и о том, как устроены интеграции. В этой, как и обещал, про…

javascriptвеб-разработкаинформационная безопасностьjsfrontendinfowatchфронтендreactинфовотчspa-приложения
Habr
RU

Микрофронтенды. Стабильная интеграция нескольких SPA-приложений. Часть 1

Привет, Хабр! Меня зовут Александр, я руковожу веб-разработкой в InfoWatch. Мы занимаемся проектированием решений, которые обеспечивают информационную…

веб-разработкаjsjavascriptreactfrontendфронтендинформационная безопасностьинфовотчinfowatchSPA-приложения
Habr
RU

Четыре релиза без единой новой функции. Почему иногда архитектура важнее новых возможностей

Четыре последних релиза моего проекта почти ничего не изменили для пользователя. Не появилось новых экранов, кнопок или возможностей. Зато именно за э…

мессенджерыархитектураэволюцияreactбекендфронтенд
Habr
RU

«РБПО для бедных»: проверяем CI/CD-конвейер на реальных уязвимостях

За шесть предыдущих выпусков мы собрали собственный конвейер безопасной разработки: развернули виртуальные машины, подняли инфраструктуру из GitLab, V…

рбпобезопасность веб-приложенийбезопасная разработкаDevSecOpsreactsecure developmentрбпо для бедныхci cdинформационная безопасностьстартапы
Habr
RU

Как протестировать более 40 UI-компонентов за минуту: ускоряем скриншот-тесты

Привет, Хабр! Меня зовут Антон, я фронтенд‑разработчик в Домклик. Наша команда отвечает за библиотеку «Продуктовых сниппетов» — те самы…

playwrightstorybookvisual-regression-testingreactjestscreenshot-testingfrontend
Habr
RU

[Перевод] Релиз Astro 7: переход на Rust, улучшенное кэширование и поддержка AI-разработки

Astro — фреймворк для сайтов, который минимизирует поставку JavaScript на клиент, обеспечивая высокую производительность. 22 июня вышла седьмая версия…

astrovitejavascriptssrssgreactvueновый релиз
Habr
RU

Как и чем ломали российские компании. Исследование Jet CSIRT

Привет! На счету Jet CSIRT с 2023 по 2025 год более 100 крупных расследований ИБ-инцидентов — мы помогали российским компаниям правильно реагировать н…

информационная безопасностькибератакиcybersecuritycyberattackdfirmitre_attackуязвимостиибвымогателиreact
Habr
RU

Как я перешёл с React на Angular и не пожалел

Когда я говорю, что перешёл с React на Angular, на меня смотрят примерно так же, как если бы я сказал, что добровольно переехал из Амстердама куда-ниб…

angularreactфронтендTypeScriptRxJSnxоопархитектура фронтендасравнение фреймворковличный опыт
Habr