Category : javascript

javascript
Мобильное приложение Ватерпас: DewDrop. Реальная история…

Если вы ранее работали с мобильным приложением DogPlanner, то вы, наверное, уже знакомы с робопёсом Роби. Но в любом случае, позвольте рассказать вам его историю. Роби живёт на Марсе... ходит молва, что он был собран кем-то из деталей первого в истории марсохода Sojourner. Он изучает красную планету, да и, по возможности, всю вселенную через сигналы, приходящие из космоса. Ему многое интересно, так как на Марсе не так уж много вариантов для развлечений и общения, только несколько марсоходов и с…

  • вторник, 17 марта 2026 г. в 00:00:05
javascript
Reactive Route — новый роутер для разных фреймворков и реактивных систем в 2 КБ

Я не OpenSource разработчик, но за пару десятков лет написал под сотню enterprise-level библиотек, которые остаются в рабочем контуре, дорабатываются под каждый проект и адаптируются к новым технологиям. Большого смысла выходить в OSS не было, кроме как для упрощения обучения коллег и единого места хранения документации.Но и желание помогать другим и делиться выстраданными подходами, экспертизой и конкретным кодом мне не чуждо - сегодня поможешь ты, завтра - тебе. Через полгода подготовки и ада…

  • понедельник, 16 марта 2026 г. в 00:00:07
javascript
Навигация по длинным AI-диалогам: расширение для браузера

Проблема Часто использую ChatGPT и другие нейросети для работы: обсуждаю идеи, пишу код, прошу объяснить сложные темы. В итоге в чате накапливаются сотни сообщений. И тут начинается хаос:Нужно найти функцию, которую обсуждали утром? 5 минут скролла вверх в поисках нужного места — и я уже потерял нить разговора. Приходится начинать заново.Отдельная боль — потеря контекста моделью. Пишешь код, а модель внезапно «забывает» техническое задание из начала диалога. ChatGPT просто обрезает контекст, а …

  • понедельник, 16 марта 2026 г. в 00:00:07
javascript
Пишем браузерное расширение для НСПД

Сделали расширение, которое вытаскивает координаты из НСПД, конвертирует EPSG:3857 → WGS84 и открывает точку в Яндекс/2ГИС/Google одним кликом. Под капотом — калибровка проекции и перехват SPA-навигации. Работаем с НСПД ежедневно. Наш типичный сценарий:Нашли объект в кадастреНужно посмотреть его на Яндекс.Картах (спутник, панорамы)Копируем координаты из URL — x=4366832.14&y=6748857.58Открываем конвертер EPSG:3857 → WGS84Копируем результат, вставляем в поиск картПовторить 20-30 раз за деньЕж…

  • воскресенье, 15 марта 2026 г. в 00:00:05
javascript
Symbiote.js — изоморфные веб-компоненты без лишних сложностей

Привет, Хабр!Меня зовут Алекс, и я мейнтейнер Symbiote.js - библиотеки для создания UI-компонентов и изоморфных приложений на самых современных веб-стандартах. Сегодня я расскажу про наше важное мажорное обновление - версию 3.x.Идея в двух словахSymbiote.js - это легкая (~6.4 kb brotli) обертка над Custom Elements, которая добавляет реактивность, шаблоны и механизмы работы со слоями данных. Без Virtual DOM, без специального компилятора, без обязательного этапа сборки - компоненты можно подключа…

  • суббота, 14 марта 2026 г. в 00:00:08
javascript
Как я интегрировал GigaChat API в свой проект: опыт создания AI-ассистента с голосовым управлением

Привет! Давно хотел поиграть с GigaChat от Сбера и наконец дошли руки. Решил не ограничиваться скучной перепиской, а сделать полноценного голосового ассистента. Чтобы можно было просто говорить с ним, как с Алисой или Siri, и получать озвученный ответ.В итоге собрал веб-приложение, где фронт ловит голос, отправляет его в текст (через распознавание речи), я гоняю этот текст через GigaChat, а ответ озвучиваю с помощью SaluteSpeech.В этом посте расскажу, с какими граблями пришлось столкнуться: как…

  • суббота, 14 марта 2026 г. в 00:00:07
javascript
Я написал мессенджер с серверами и голосовыми каналами. Один. Рассказываю зачем и как

Когда в октябре 2024-го заблокировали Дискорд, я сидел в голосовом канале с друзьями. Связь оборвалась, все полезли за впн-ками, кто-то ушёл в Телеграм, кто-то просто пропал. Серверы, которые мы строили годами, с каналами, ролями, ботами, в один момент стали недоступны.Я фрилансер, пишу на React и Node.js. В тот вечер подумал: а насколько сложно вообще сделать свой мессенджер с серверной структурой? Не чат на вебсокетах из туториала, а нормальный. С серверами, каналами, ролями, голосовыми комна…

  • суббота, 14 марта 2026 г. в 00:00:06
javascript
VRack2 — Кот аристократ в мире локальной автоматизации

Это большая статья про дешевую локальную автоматизацию на основе VRack2. Будет очень много тем разной направленности. Работа с железом, мелкие сервисы, организация инфраструктуры.По сути это компиляция моей работы за последние несколько лет. Важно подметить - моей и только моей.Если какая-то тема не привлекает - просто переходите к следующей, скорее всего на что-нибудь интересное наткнетесь.Вначале я приведу немного вводной информации, потом будут практические реализации.Зачем это нужно?У вас п…

  • суббота, 14 марта 2026 г. в 00:00:05
javascript
Когда фронтенд перестаёт быть игрушкой: пишем собственный реактивный движок на JavaScript

Почти каждый фронтенд-разработчик однажды задаётся вопросом: что на самом деле происходит внутри современных фреймворков. Почему изменение переменной автоматически обновляет интерфейс? Как библиотека понимает, что именно нужно перерисовать?Можно бесконечно читать документацию, но лучший способ понять — написать минимальную реактивную систему самостоятельно. Не игрушечный пример из десяти строк, а маленький, но рабочий движок.В процессе мы реализуем:систему реактивных данныхотслеживание зависимо…

  • суббота, 14 марта 2026 г. в 00:00:04