Category : javascript

javascript
AWG-Easy 3: как с помощью вайб-кода сделал простую панель для AmneziaWG 3.x

Привет, Хабр!Я не программист и не разработчик. Мне ближе системное администрирование: развернуть сервис, разобраться с сетью, найти конфликт портов, проверить маршрутизацию и добиться, чтобы всё это пережило повторную установку. Но благодаря нейросетям у людей вроде меня появилась возможность не только описывать идеи, но и доводить их до работающего кода.Так появился AWG-Easy 3 — небольшая Docker-панель для AmneziaWG 3.x с управлением клиентами, изоляцией Home/Guest, IPv6, диагностикой соедине…

  • пятница, 28 августа 2026 г. в 00:00:10
javascript
Как я заставил HTML из ChatGPT будить телефон: песочница, точные будильники и мост из пяти методов

В июле я попросил Claude написать мне таймер рабочего дня: 45 минут сидя, две минуты у турника, 45 стоя, обед, и так до вечера. Один HTML-файл, ноль зависимостей, открыл в браузере — работает. Я назвал его «Смена» и честно прожил с ним день. К обеду выяснилось главное: телефон его не будит. Экран погас — вкладка уснула, setTimeout заморозился, никакого сигнала. Web Notifications на мобильном не ринг-тон, а строка в шторке, и то если вкладка жива. Push требует сервер и подписку. PWA на iOS — отд…

  • пятница, 28 августа 2026 г. в 00:00:08
javascript
Почему рекламный пост в Telegram нельзя публиковать через copyMessages

Если бот копирует один и тот же пост в десять каналов, в Google Analytics все клики свалятся в одну кучу. URL у скрытой ссылки живёт не в тексте, а в MessageEntity, а copyMessages копирует его как есть. Ниже — как пересобрать пост под каждую площадку, не сломав жирный шрифт, эмодзи и health‑check.Telegram умеет одно очень удобное действие: copyMessages. Берёте сообщение из чата A, кладёте в чат B — форматирование, медиа, альбом, скрытые ссылки, всё на месте. Для рассылок и зеркал это идеальный …

  • пятница, 28 августа 2026 г. в 00:00:07
javascript
«Я собрал приложение за выходные». Почему вайбкодинг в проде опаснее, чем кажется

Где заканчивается прототип и начинается инженерия, почему «работает у меня» не равно «готово для бизнеса», и за что на самом деле платят опытной команде.Иллюстрация 1. Ожидаемый результат против ответсвенности.Коротко. Vibe coding хорош для прототипа, но в production скорость генерации кода не заменяет архитектуру, security review,тестирование, наблюдаемость и эксплуатационную ответственностьЗа последний год я несколько раз слышал одну и ту же формулу: «Зачем мне команда разработки? Я найду чел…

  • пятница, 28 августа 2026 г. в 00:00:06
javascript
Мой vault стал планетой: как я сделал 3D-граф знаний для Obsidian на Three.js

Плагин CosmoGraph 3D визуализирует vault Obsidian как интерактивную планету заметокЯ люблю встроенный граф Obsidian. Первые секунд тридцать.Пока заметок немного, он действительно помогает увидеть связи. Потом vault подрастает, граф превращается в клубок из сотен точек и линий, а я снова открываю поиск и набираю имя файла руками. Всё вроде бы связано, но пользоваться этой картиной как картой уже трудно.В какой-то момент мне захотелось не просто видеть, что заметка A связана с заметкой B. Хотелос…

  • пятница, 28 августа 2026 г. в 00:00:04
javascript
Рефакторинг моего Obsidian: как я перестроил хранилище после предыдущей статьи

ПредысловиеКакое-то время назад я выкладывал статью на Хабр про свое obsidian хранилище.Я получил хороший фидбэк и некоторые идеи. Также я понял, что довольно большая часть моего obsidian нуждается в оптимизации и структуризации. В итоге нашел свободный выходной, чтобы немного перестроить хранилище. Я все это сделал и тут расскажу, как теперь выглядит мой obsidian.Кроме простой структуризации и удаления лишнего, я также провел некоторые махинации над кодом dataviewjs своей библиотеки книг и дод…

  • пятница, 28 августа 2026 г. в 00:00:04
javascript
Self‑hosted вместо подписок: асинхронная очередь для ИИ‑агента на n8n и Redis

В прошлой статье я показал, как простой дебаунс на Redis спасает бюджет от дробных сообщений: клиент строчит «привет» — «сколько стоит» — «а есть другой размер» пятью сообщениями подряд, а LLM получает один склеенный промпт.Дисклеймер: в статье упоминается Meta: организация признана террористической и запрещена в РФ) Схема, код и цифры взяты из продакшена; название проекта и префиксы ключей изменены. Статья не является рекламой/самопиаром и тому подобное.Сегодня я поделюсь уровнем ниже. Дебаунс…

  • четверг, 27 августа 2026 г. в 00:00:06
javascript
Разработчики в вашей компании уже тратят много токенов. Как проверить реальную пользу ИИ для бизнес…

За час ИИ-агент может изменить десятки файлов, написать тесты и потратить большой объём токенов. Польза для команды зависит от результата. Если разработчик долго восстанавливает ход изменений, переписывает половину патча или обнаруживает пропущенный сценарий после слияния, работа агента только увеличивает нагрузку.Число запросов, объём сгенерированного кода и расход токенов показывают активность модели и её стоимость. Для оценки пользы нужны другие данные: сколько времени сэкономил разработчик …

  • среда, 26 августа 2026 г. в 00:00:11
javascript
Ускоряем drop in replace Next.js в 100 раз. Часть 2

В первой части мы разобрали архитектуру Rari, выяснили, почему Rust перед V8 даёт выигрыш в производительности, и посмотрели на бенчмарки. В этой статье хочется поговорить о том, что обычно остаётся за кадром бенчмарков: как это работает в продакшене, что конкретно поменялось под капотом, где ломается совместимость с Next.js, как мы портировали их SWC-плагины и как производительность выросла с 4x до 67x.Один процесс вместо целого стека технологийNext.js в продакшене почти никогда не работает бе…

  • среда, 26 августа 2026 г. в 00:00:10