Drone Watch
Drone Watch
Общая картина воздуха для группы наблюдателей
Работает в проде: v0.27.0 · 18 августа 2026
Алексей Жданов · 84.201.174.70.sslip.io
Дроны над районом видят десять человек. Общей картины нет ни у кого.
Наблюдатели есть. Доклады есть. Картины нет.
Как это происходит сейчас
В чате голосовое: «вижу дрон, идёт на север, где-то над Сосновкой». Через минуту второе, от другого человека — возможно, про тот же дрон, возможно, про другой. Ещё через минуту кто-то спрашивает: «это один и тот же?» Ответа нет ни у кого.
К вечеру в чате сорок сообщений. Сколько объектов было в воздухе, откуда заходили и куда ушли — по этой ленте не восстановит никто.
Координатор держит картину в голове, пока хватает головы.
Чат хранит слова. Карта хранит картину.
Сорок сообщений — это сорок сообщений, а не ответ на вопрос „сколько их и куда идут“.
Drone Watch сводит доклады группы на одну живую карту
- увидел объект — отметил за секунды, тремя способами на выбор;
- сервер сводит доклады разных людей в цели с треком и курсом;
- у всех одна и та же картина, обновляется в реальном времени.
Ссылка в чат — и человек на общей карте
-
Ссылка в чат
Открыл в браузере, ввёл имя, подтвердил отпечатком — он на карте. Ни установки, ни анкеты, ни пароля: вместо него — отпечаток или Face ID.
-
Увидел — доложил
Тапом по карте, если понятно где. Азимутом, если видно только направление. Наведением телефона, если некогда целиться в экран.
Два доклада с разных точек дают координату
-
Пересечение лучей считает сервер
Один наблюдатель даёт направление, двое — точку.
-
Координатор видит цели, а не ленту
Трек, скорость, курс, пунктир прогноза. Доклады об одном объекте сводятся автоматически, спорные — одним нажатием.
Один наблюдатель даёт направление. Двое — координату.
Никакого радара. Два человека с телефонами и школьная геометрия — этого достаточно, чтобы поставить точку на карте.
Это полевой инструмент, а не веб-страничка
- связь пропала — доклад ждёт в телефоне и уходит сам, когда сеть вернулась;
- приложение стартует без сети: из кэша поднимаются цели и метки последнего снапшота, а не сама подложка карты;
- ночная тема, крупные цели касания — работает в темноте и в перчатках;
- голосовой доклад и голосовые команды: руки заняты биноклем;
- вибрация и звук по дистанции, пуш при свёрнутом приложении — телефон может лежать в кармане.
Карта и постоянный GPS расходуют батарею. На длинный выезд нужен павербанк — мы говорим это сразу, а не после покупки.
Что уже работает, чего пока нет
Срез на v0.27.0, 18 августа 2026
Работает
- общая карта группы, позиции и статус участников;
- доклад тапом, азимутом и наведением телефона;
- триангуляция: два луча дают координату;
- цели с треком, скоростью, курсом и прогнозом;
- голосовой доклад и голосовые команды карты;
- вибрация, звук и пуш по дистанции до цели;
- работа без связи: очередь, старт из кэша, установка на телефон;
- расстояние, румб, линейка, километровая сетка;
- закрытая группа: ссылки, роли, вход отпечатком.
Чего пока нет
- полевых испытаний с настоящей группой;
- демо без приглашения;
- нескольких групп на одном сервере и экспорта истории.
Группы для первого полевого пилота есть — договорённость на руках.
Всё это — 20 дней работы одного человека
первый коммит
первый выкат в прод
28-й релиз
Под капотом
Доступ и приватность
- группа закрытая: вход только по одноразовой ссылке от координатора;
- вход по отпечатку (passkey) вместо пароля;
- координатор отзывает доступ — сессии, ключи и открытые сокеты рвутся сразу;
- геопозиция — тумблер у наблюдателя, выключается в любой момент;
- база наружу не смотрит, TLS обязателен: без него не работают компас и геолокация.
Почему так быстро
база знаний с онтологией → спека → план → агенты по задачам → тесты вперёд кода → независимое ревью → CI → выкат тегом
Срез 18 августа 2026
Документация здесь — не отчёт постфактум, а оснастка: машиночитаемая база с типами узлов и связями, из которой агент входит в задачу за минуты. Поэтому темп не падает с ростом кодовой базы — обычно он падает.
Где здесь барьер — и где его нет
Барьера нет
Пересечение азимутов — школьная геометрия, карта — открытая библиотека, реалтайм — обычные веб-сокеты. Функциональность повторима, и мы это не прячем.
Барьер есть
- Дистрибуция через координатора. Ценность растёт с числом наблюдателей в районе: приход координатора приводит с собой группу, а уход происходит только целиком.
- Скорость цикла. Преимущество не в том, что написано, а в том, за какое время пишется следующее.
- Оснастка этой скорости. Онтология и агентный процесс не привязаны к дронам и переносятся на следующий продукт.
Самый прочный барьер — накопленная история района. Его у нас пока нет: он появляется после пилота.
Куда идём
-
Демо без приглашения
Воронка перестаёт упираться в живого координатора: посмотреть можно сразу.
-
Полевой пилот с настоящей группой
Первое подтверждение вне лаборатории — группы для него уже есть.
-
Несколько групп на одном сервере, экспорт истории
Переход от одной группы к продукту, который можно раздавать.
-
История района
Накопленные треки и заходы — то, чего не повторить скоростью разработки.
Что нужно
Что уже есть с нашей стороны: работающий продукт в проде, группы для пилота, метод, который держит темп.
Что просим
- партнёрство — организация, которая берёт продукт в свой контур или канал и даёт ему выход на группы за пределами первого пилота;
- финансирование следующего этапа — демо, полевой пилот, мультигруппность.
Посмотреть и связаться
Приложение — 84.201.174.70.sslip.io
Бот — t.me/drone_watch_bot
Алексей Жданов
Приложение
Вопросы и ответы
- Нужен ли интернет? Для общей картины — да. Без связи доклад не теряется: ждёт в телефоне и уходит сам, когда сеть вернулась. Из кэша поднимается последняя картина — цели и метки, а не сама подложка карты.
- Кто видит, где я? Только участники вашей группы и только пока включён тумблер геопозиции. Выключается в одно касание в любой момент.
- Сколько человек в группе? Рассчитано примерно на полсотни.
- Что с батареей? Карта и постоянный GPS расходуют заметно — на длинный выезд нужен павербанк. Геопозицию можно выключить, доклады работают и без неё.
- Сколько стоит? Сейчас нисколько. Набираем первые группы на полевые испытания.
Приложение
Стек и контур
pnpm-воркспейс, TypeScript strict, Fastify 5 с веб-сокетами, Drizzle и PostgreSQL 17, React 19 с Vite, MapLibre GL JS, Zustand, Playwright.
Развёртывание: образ собирается в CI, приезжает из GHCR на VPS, выкат по тегу.
Приложение
Ночной режим
Та же карта в темноте: подложка глушится, цели и лучи остаются яркими. На кадре включена линейка — 7,2 км до цели по прямой.
Приложение
Ссылки
- Приложение — 84.201.174.70.sslip.io
- Бот — t.me/drone_watch_bot