Система трекинга Drivers-map (Web + Android)

Карта водителей в реальном времени для такси и доставки: Android-приложение, статусы и лёгкий серверный backend. Система состоит из двух взаимосвязанных частей: веб-приложения на Vercel с API и Redis, и Android-приложения на Capacitor. Веб-интерфейс отображает всех водителей на карте и управляет именем и статусом. Android-приложение надёжно отправляет GPS-координаты в фоне через foreground-service. Бэкенд объединяет данные в единый профиль водителя и обеспечивает актуальную карту в реальном времени.

Rolle Фулстек-разработчик (frontend, backend, Android)
Kunde Такси-компания в Австрии (пилотный проект)
Stack JavaScript, HTML/CSS, Node/Serverless (Vercel), Upstash Redis, Capacitor (Android)

Исходная ситуация и цель

Такси-компании нужна была простая система, чтобы в реальном времени видеть, где находятся водители, и свободны они или заняты – без дорогих комплексных решений и без сложных внешних платформ. Раньше всё строилось на звонках и ручной координации.

Решение и архитектура

Web-фронтенд (карта водителей)

  • Карта с маркером для каждого водителя (позиция, имя, статус).
  • Онлайн-обновление координат через Heartbeat-API, без ручной перезагрузки страницы.
  • Список водителей рядом с картой со статусом «свободен / занят».

Backend и хранение данных

  • Serverless-функции на Vercel (API /api/heartbeat, /api/list, /api/status).
  • Upstash Redis для краткосрочного хранения координат с TTL.
  • Объединение координат (Android-приложение) с именем/статусом (веб-фронтенд) в единый профиль водителя.

Android-приложение (Capacitor WebView)

  • WebView с тем же интерфейсом, что и в браузере — единая UX для водителей.
  • Foreground-сервис для отправки координат на Heartbeat-API.
  • Для каждого устройства создаётся отдельный driverId (UUID), чтобы водители не перезаписывали друг друга.

Текущий статус и дальнейшие шаги

Система уже используется в реальной среде. Сейчас я дорабатываю стабильную передачу координат в фоне на Android (особенно Android 14+), чтобы обновления не прерывались при погашенном экране.

Скриншоты и демо

Несколько скриншотов из текущей версии системы. По запросу могу подготовить живую демо-версию с реальными данными.

Скачать приложение и протестировать

Тестовая версия Android-приложения позволяет увидеть систему в действии: GPS-координаты передаются в фоне, а диспетчер получает актуальное положение водителей на карте.

Скачать APK

Устанавливается только на Android. Для теста может потребоваться временно включить установку из неизвестных источников.

Технологии

  • JavaScript
  • HTML / CSS
  • Node / Serverless (Vercel)
  • Upstash Redis
  • Capacitor (Android)
  • Background Location
  • REST API