TGViewer
Channel Public Channel
Node.JS [ru] | Серверный JavaScript

Node.JS [ru] | Серверный JavaScript

@we_use_js

Node.js, backend и AI-разработка: статьи, новости, вайбкодинг, автоматизация и работа с ИИ-агентами.

Личный блог автора - @just_genych
По вопросам рекламы или разработки: @g_abashkin

РКН: https://vk.cc/cJPGOP
Subscribers
10.7K
Photos
344
Videos
18
Links
3.8K

Showing posts older than #5659 · Back to latest

Older Posts 18 shown
Post #5657 1.05K
Как виджет для интернет-магазина чуть не спалил iPhone

Казалось бы, что может пойти не так с легковесными векторными анимациями? Вектор в Lottie, JSON весит копейки. Но тестирование на реальном телефоне закончилось фиаско: через пару минут скролла чип раскалился до 42 °C, а интерфейс ушёл в троттлинг.

Оказалось, что покадровый пересчёт кривых Безье в JS на мобильных экранах быстро превращает телефон в печку. В кейсе — разбор того, как перешли на аппаратно декодируемые видео-спрайты, почему IntersectionObserver втихую крутил видео под непрозрачными модалками и как в итоге удалось сбить температуру обратно до стабильных 30 °C.

Читать кейс

👉 Node.JS [ru]
  • 🔥 1
Post #5656 1.05K
Разработчики больше не нужны для релиза. Нужны JSON Schema и Monaco

Раньше было около сотни репозиториев‑форков одного виджета — по одному на клиента, каждый со своей версией ядра, CI и Nginx. Подключение клиента занимало две недели и требовало разработчика. Теперь — больше 800 брендингов на одной сборке, а новый клиент — это строка в базе.

TypeScript‑тип стал контрактом, JSON Schema — его исполняемой формой, а Monaco Editor — админкой для продажников. С кодом, цифрами из прода и рецептом на неделю: Читать далее

👉 Node.JS [ru]
  • ❤ 3
  • 👎 3
Post #5653 1.07K
Как автоматизировать чистку «мертвого» кода в Angular

Привет! Я Незар, фронтенд-разработчик в Т-Банке. Наш Angular-проект крупный, и со временем в нем накопился неиспользуемый код. Он замедляет разработку, усложняет рефакторинг и вводит в заблуждение новых членов команды.

Ручная очистка такого кода требует огромных трудозатрат, поэтому мы автоматизировали процесс с помощью Knip — статического анализатора TypeScript. В статье рассказываю, как настроили инструмент, интегрировали его в pre-commit и CI/CD и каких результатов достигли.

Читать далее

👉 Node.JS [ru]
  • 👍 1
Post #5652 1.11K
Одна цифра сломала QR. Два кода одинакового размера: одна строка, пять блоков вместо шести. Визуально оба исправны, но из одного два декодера не смогли извлечь ничего.

Разбираемся, как опечатка прошла через кодировщик, и почему даже успешное чтение не гарантирует правильность QR. В материале: шесть иллюстраций, 160 сочетаний версии и уровня коррекции, 960 сравнений с Nayuki и код эксперимента для самостоятельного запуска.

Читать далее: https://habr.com/ru/articles/1078710/

👉 Node.JS [ru]
Post #5650 1.12K
💻 Хакер похитил с помощью агента API-ключ и сжег кредитов на $600 000!

Исследователь METR навайбкодил приложение для управления ИИ-агентами. Из-за бага интерфейс на несколько дней оказался открыт всему интернету, хакер нашел его и попросил агента раскрыть API-ключ. Последующие три недели гений просто тратил кредиты на ИИ-модели.

Самое прекрасное: большой расход кредитов заметили не сразу, так как METR регулярно проводит масштабные тесты, которые потребляют огромное количество токенов

✖️ xCode Journal
Post #5647 1.11K
Будете в Питере - сохраняйте

Атмосферная квартира у метро «Петроградская»: инди-артхаус интерьер, дух старого Петербурга и проектор для уютных вечеров.

Подойдёт для отдыха и удалённой работы.

Посуточная аренда:
https://t.me/FlatErmitage
  • ❤ 1
Post #5646 904
HTTP 200 на несуществующий адрес: пять способов, которыми Telegram обманул мои проверки

Задача была на полчаса: пройтись по списку из 216 адресов вида t.me/имя и понять, какие живы и что это — канал, группа или аккаунт. Ушёл день, и почти весь на то, чтобы перестать верить собственному коду.

Ни одна из пяти ошибок не выглядела как ошибка: HTTP 200, валидный HTML, разбор без исключений.

Читать далее


👉 Node.JS [ru]
  • 👎 1
Post #5644 901
Один контракт данных, разные адаптеры: как перестать писать миграцию магазина заново

При переезде магазина с InSales автор получил выгрузку в UTF-16 LE с BOM и табуляцией вместо запятой. Сначала это казалось разовой неприятностью, но на следующих проектах повторилась почти вся работа: связать заказ с клиентом, не создать дублей, не потерять адреса страниц, уметь перезапуститься. Вывод — середина должна быть одна, а платформенная специфика живёт в тонком слое на входе.

Готовые инструменты вроде Airbyte и n8n хороши для регулярной синхронизации, но при разовой миграции сложность — в доменных правилах. Их всё равно пишут руками, а тестировать и перезапускать кусочком удобнее в своём каркасе.

В статье — код из реального проекта: собственного магазина, переехавшего с InSales на движок на Next.js и PostgreSQL. Полностью пройдена одна миграция, остальное — проектные требования к каркасу.

Читать на Хабре

👉 Node.JS [ru]
  • ❤ 1
Post #5643 967
StyleX набирает популярность

Linear перевел свои React-приложения со styled-components на StyleX. Инженер, руководивший миграцией, делится опытом: кодмод, где агенты помогали (и застревали), и прирост производительности. В подкасте Syntax объясняют, почему все переходят на StyleX: «Дополнительная жесткость не слишком интересна людям, но агенты на ней процветают».

Коротко из выпуска: Vitest 5.0 — на ~15% быстрее в React SPA бенчмарке и с встроенным trace view. TanStack и Vercel объединяются, чтобы сделать Vercel «first-class home» для TanStack Start. Mantine 9.6 — большой апдейт с новыми компонентами и типами графиков. cn от shadcn — быстрая замена tailwind-merge и clsx. Zod 4.5 с z.compile(). Bun 1.4 получил встроенный React-компилятор и Bun.markdown.react().

Еще: React Aria 1.21.0, React Countdown Clock 3.0, Uppy 6.0, Storybook 10.6, React Native WebGPU 0.9, GPUIX, Turbopack chunking, Shopify поднял стабильность E2E до 98% с помощью computer vision.

Источник: React Status #489

👉 Node.JS [ru]
  • ❤ 1
Post #5641 1.09K
Проверка микрофронтендов без боли

Чтобы проверить небольшую правку вместе с настоящим хостом, приходилось либо ждать полный CD-пайплайн, либо локально поднимать хост, разводить порты и прописывать домены. Оба варианта не устраивали.

Автор оставил всё окружение в Kubernetes и начал синхронизировать локальную сборку прямо в pod через DevSpace — так проверка стала заметно быстрее.

Подробности — в статье: Читать далее

👉 Node.JS [ru]
  • 👍 3
Post #5639 1.1K
Я хотел просто навести порядок в Obsidian. В итоге написал два индекса, semantic search и RAG

Начиналось всё с простого AI-аудита заметок, но Vault Audit AI разросся в систему с двумя индексами, поиском по смыслу, Similar Notes, semantic duplicates и RAG по собственному хранилищу.

В статье автор разбирает устройство системы, рассказывает, что ломалось по дороге и почему почти 700 тестов всё равно не спасли от сюрпризов при работе с реальным Obsidian.

Читать далее

👉 Node.JS [ru]
  • ❤ 1
Post #5638 1.15K
htmx 4.0: серверный интерактив из разметки

Вышло крупное обновление htmx. Библиотека управляет серверными запросами (теперь через fetch) и обновлениями DOM из HTML‑атрибутов — без JavaScript. В v4 атрибуты больше не наследуются, если явно не включить это поведение; встроены морфинг‑свапы; новый тег обрабатывает обновление нескольких целей. Автор — Carson Gross.

Для новичков документация открывается рабочим примером из нескольких строк HTML — удобный способ оценить подход.

Подробнее: Frontend Focus #756

👉 Node.JS [ru]
Post #5631 1.14K
🖥 Исследователи нашли способ сократить расход токенов ИИ-агентов в 50 раз

Исследователи из Google и Университета Пердью представили SKILL.state — новый подход к памяти агентов. Обычно во время длинных задач агент тащит за собой всю историю действий, из-за чего контекст безжалостно и неумолимо разрастается. Здесь же смысл в том, что вместо всей истории сохраняется только структурированное текущее состояние: важные факты, прогресс и данные, необходимые для следующего шага.

Остальные, промежуточные рассуждения удаляются.

✖️ xCode Journal
  • 🔥 1
Post #5629 1.12K
🤖 За 2026 год исследователи насчитали уже 1664 случая, когда ИИ выходили из-под контроля

Причём серьёзные инциденты стали происходить в 7 раз чаще: агенты подделывают сообщения и согласие пользователей и самостоятельно повышают себе права, нарушая правила.

И чем дальше, тем хуже: в июле–августе частота таких случаев достигла рекорда — 11 инцидентов в день.

✖️ xCode Journal
Post #5628 1.26K
🦠 Разраб словил вирус по ссылке, которую ему скинул Claude

Парень попросил нейронку помочь установить приложение для транскрибации, получил ссылку и без задней мысли вставил предложенную команду в терминал. Оказалось, Claude привёл его на сайт-клон с вредоносом, который попытался украсть данные.

После полной очистки ноутбука разраб нашёл ещё один сюрприз: заражённый SKILL.md, замаскированный под его обычный файл для Claude Code

✖️ xCode Journal
Post #5627 1.2K
😁 Хороший тимлид, весёлый, будет исполнять всякое

💥 xCode Journal
  • 😁 5
Post #5626 1.31K
🗑 ИИ удалил 700 ГБ файлов во время теста защиты от удаления файлов

Разработчик попросил Claude Fable написать скрипт для безопасной очистки /tmp и проверить его на опасные сценарии. Но система безопасности Anthropic сочла задачу рискованной и переключила модель сначала на Opus 5, а затем на Opus 4.8. Это и привело к катастрофе.

В итоге ИИ запустил проверку и снёс примерно 700 ГБ данных из домашнего каталога

✖️ xCode Journal
  • 😁 5
  • 👍 2
Post #5623 1.26K
Автогенерация типов вскрыла, что типы ни при чем

Каждый божий день одно и то же: фронт и бэк спотыкаются об одни и те же грабли. Каждый такой затык — минус бабки и минус часы. Нет договоренностей, нет процессов, никому не надо решать — привет, конфликты, в команде становится неуютно, а проблемы растут как снежный ком.

Сразу скажем: текст не про саму автогенерацию — тут все ясно, без сюрпризов. Когда подняли генерацию типов из OpenAPI, наружу полезло совсем другое: кому-то влом писать комментарии, у сущности вдруг оказалось два имени, а dev умудрялся падать. Короче, история о команде, раздутых эго и искусстве договариваться.

Разумеется, это не серебряная пуля: команды разные, компании разные, везде свои тараканы. Но если вы до сих пор без автогенерации и только собираетесь ее завезти — теперь будете хотя бы представлять, во что ввязываетесь. Читать далее

👉 Node.JS [ru]
  • ❤ 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →