Category : javascript

javascript
Как я полюбил LESS и с его помощью добавил в CSS статическую типизацию на основе венгерской нотации…

Прежде, чем мы двинемся вперёд, давайте закончим тему использования миксинов как функций, поднятую во второй части. Без этого будут непонятны некоторые синтаксические моменты.❯ Функциональный подход❯ Возвращаем найденное, цена договорнаяКак я рассказывал ранее, миксины могут выступать не только в роли базовых CSS-классов, но и в роли функций, которые что-то рассчитывают и возвращают. При этом, никакого ключевого слова для возврата значений (типа return) в LESS нет — вместо этого автоматически в…

  • среда, 15 октября 2025 г. в 00:00:09
javascript
Я мигрировал свой монорепозиторий на Bun — вот мой честный отзыв

Недавно я перенёс Intlayer (решение для i18n) — монорепозиторий, состоящий из нескольких приложений (Next.js, Vite, React, design-system и т. д.) — с pnpm на Bun.Кратко (TL;DR): если бы я знал заранее, я бы, вероятно, не делал этого. Я думал, что это займёт пару часов. В итоге ушло около 20 часов.Меня привлекло обещание «всё в одном» и впечатляющие показатели производительности. Я попробовал, я собрал — всё билдилось молниеносно, круто. Затем я сделал коммит… и столкнулся с первой проблемой.Hus…

  • среда, 15 октября 2025 г. в 00:00:08
javascript
Создаём AI-ассистента для код-ревью с нуля

Каждый разработчик знает эту ситуацию. Вы сделали небольшую правку, создали Pull Request и... ждёте. Иногда ревью затягивается, потому что коллеги заняты, а иногда оно превращается в рутинный пинг-понг из-за пропущенной точки с запятой или несоответствия стайлгайду. Рутинные проверки отнимают драгоценное время и концентрацию, которые можно было бы потратить на обсуждение архитектуры и бизнес-логики.А что, если делегировать эту первую, самую механическую линию обороны машине? Что, если бы у нас …

  • вторник, 14 октября 2025 г. в 00:00:09
javascript
Использование Yandex Embedder на JavaScript

В прошлом примере я рассказал о том, как можно использовать YDB в качестве векторной базы знаний. Сегодня расскажу про то, как использовать Yandex Embedder.Но сначала несколько слов о том, почему Embedder - это очень важно.Итак, у нас есть задача: есть некоторая внутренняя система (у моем случае - YouTrack), есть ИИ (не важно какой). Я хочу получать ответы от ИИ с использованием данных из внутренней системы. Классическое решение - это выгрузка данных из внутренней системы в RAG и использование …

  • вторник, 14 октября 2025 г. в 00:00:07
javascript
Bricks: от идеи до UI за 60 секунд

Эта статья — продолжение цикла статей о платформе Bricks в Авито, поэтому для полного понимания происходящего перед прочтением данной статьи настоятельно рекомендую ознакомиться с работами моих коллег: Bricks: новый подход к управлению интерфейсами, Современные подходы к управлению UI: low-сode & Backend-Driven UI, Backend-driven UI: от идеи к проду.Дмитрий ГусевСтарший разработчик интерфейсов в AvitoЯ — Дмитрий Гусев, Frontend-разработчик в команде Bricks в кластере Core Services в Авито, …

  • вторник, 14 октября 2025 г. в 00:00:06
javascript
Протоколы (устройства) системы DevelSCADA (часть 1)

Система DevelSCADA, как и любая SCADA система, в первую очередь предназначена для взаимодействия с каким либо физическим оборудованием. Для этого система поддерживает набор популярных протоколов связи с различными устройствами автоматики. В DevelSCADA, для удобства работы, реализован механизм «Устройств», который позволяет без необходимости обращаться к низкоуровневым данным протокола, посредством графического интерфейса, настраивать связь с устройством и формировать список переменных, обмен зн…

  • вторник, 14 октября 2025 г. в 00:00:05
javascript
Как я подружил бэкенд с API AmoCRM: связь сущностей, отправка данных, защита от дублей

Интеграция простой формы с AmoCRM на «бумаге» выглядит просто. Кажется, что можно просто отправить контакт, создать лид, прикрепить товары к сделке — и готово. На практике всё наоборот.Честно говоря, документация AmoCRM сначала меня запутала. Я полез гуглить по моей ситуации (связка формы с CRM), но не нашел почти ничего. Посмотрел ролик на YouTube про библиотеку. Понял основы, но всё равно оставалось куча вопросов.Дело в том, что AmoCRM в упор не видит дубликаты контактов и товаров. При очис…

  • вторник, 14 октября 2025 г. в 00:00:04
javascript
Настройка Express 5 для продакшна в 2025 году. Часть 2

Эта статья поможет вам создать приложение Express 5 с поддержкой TypeScript.Вы настроите готовый к продакшну проект с помощью различных инструментов для линтинга, тестирования и проверки типов. В случае, если вы новичок в REST API, не волнуйтесь, эта статья также включает объяснения основных концепций, которые следует знать, таких как маршрутизация (роутинг) и аутентификация.Настоятельно рекомендую писать код вместе со мной. Мы будем использовать подход "Разработка через тестирование" (…

  • понедельник, 13 октября 2025 г. в 00:00:05
javascript
Стоит ли пользоваться функцией If() в CSS?

ТеорияПримерыПродвинутые методыCSS давно подвергается критике из за отсутствия условной логики (if...else). Хотя мы разработали хитроумные обходные пути с использованием @media запросов (media queries), переключаемых настраиваемых свойств и контейнерных запросов, эти решения часто кажутся слишком громоздкими и непрямыми. Рабочая группа CSS (CSS Working Group) одобрила функцию if() для разработки, которая обещает добавить настоящую условную стилизацию непосредственно в наши стили.cssРаньше, ког…

  • воскресенье, 12 октября 2025 г. в 00:00:05