Home
All cases
— Fleet ops platform · Client work · 2025–2026

Двигатель не заведётся,
пока ТО не закрыто.

Платформа аренды авто для таксопарка СПб: PWA водителя, админка диспетчера, интеграции с 16 СТО и 1С. 15 разделов админки, 2 PWA-приложения, 5 городов — каждое состояние спроектировано так, чтобы спор «кто кому должен» не доходил до директора.

9:41
NAVIGATOR.taxi
Аренда авто — просто и удобно
👤 Водитель
🔧 СТО
Код отправлен на +7 (981) 401-99-83
9:41

Service

⚙ Work type
My car
Friends
Service
More
9:41
·
My car
Friends
Service
More
9:41

Test vehicle (K162TR)

K162TR
Vehicle ready
Engine unlocked — no service order needed.
My car
Friends
Service
More
9:41
My car
Friends
Service
More
9:41
My car
Friends
Service
More
15разделов админки 2PWA-приложения 16партнёрских СТО 5городов + Telegram + AI
Роль
Продукт + UI + interaction + frontend
Объём
15 разделов админки · 2 PWA
Стек
React · Vite · Fastify · Postgres · 1С · Tauri
Год
2025–2026
— 01 / Контекст

Excel + WhatsApp.
Спор «кто кому должен» добегает до директора.

Парк на 161+ авто, 16 партнёрских СТО в 5 городах, 1С на сверке. До системы каждый шаг — отдельная переписка. Заказ-наряды задним числом, расхождения ловят раз в месяц.

— проблема

Каждый день — одно и то же.

Водитель не приехал на ТО. СТО прислала счёт без согласования. Бухгалтерия не понимает, за что платит. Информация прилетает чаотически из чатов и звонков, а не из единой формы.

— тезис

Заказ-наряд — одна сущность.

Один объект данных одинаково выглядит в трёх интерфейсах: у водителя в смартфоне, у СТО в чате, у финансиста в админке. Оплата невозможна, пока ЗН не согласован тремя сторонами.

— принципы

Три правила, без исключений.

  1. Цветной статус важнее номера — красная плашка «Доп. согласование» всегда наверху, чёрный заголовок проигрывает
  2. Tabular numerals везде — когда суммы тикают, layout не дёргается
  3. Inline-edit, не popup — клик по полю в строке таблицы редактирует, никаких модалок и detail-страниц
— что не вошло

От чего отказались.

  • Карточная раскладка задач — у нас сотни, нужны строки и скролл
  • Detail-страницы — всё inline в той же строке
  • Pagination — на 10 000+ ЗН проигрывает виртуальному скроллу
  • Отдельные папки по неделям — week-divider внутри одной ленты
  • Анонимные комментарии — у каждой реплики автор и аватар
— 02 / Процесс

От audit-звонков
к проду v3.22.

90 минут записей с инженерами таксопарка → 7 конкретных болевых точек → дизайн-система → UI-кит → интеграции → прод. Каждое решение в админке имеет prefix цитаты пользователя.

— Discovery 90 минут записей Записал 90 минут разговоров с диспетчером, водителем и руководителем СТО. Расшифровал в 7 болевых точек: «специалист никогда не кликает в detail», «комментарии должны иметь автора», «нужны строки, не карточки». // 7 болей · 3 роли
— Architecture Одна сущность · 3 view Заказ-наряд: статусы (черновик / на проверке / доп. согласование / оплачено) — общие для трёх интерфейсов. Привязка к 1С — через UUID, не имена. Расхождения — отдельная таблица, не баг. // 1 schema · 3 UI
— MVP Driver PWA + админка React + Vite + TypeScript на фронте. Fastify + Prisma + Postgres на бэке. Tauri-обёртка для иОС/Android. Капасити в первую версию — 5 ключевых табов и 8 разделов админки. // React · Fastify · Prisma
— Iteration Логи действий → правки 1 135 событий в логах за первый месяц показали: где люди тыкают и не понимают, где жмут «отмена» и идут писать в чат. По логам пришло 30+ микро-правок UI и 5 новых разделов админки. // 1 135 событий · 30+ правок
— Production v3.22.293 · в проде Веб + VK Mini App + Android APK на одном бэкенде. CI/CD через GitHub Actions, self-hosted runner. Telematics-интеграция отключает двигатель, пока ТО не закрыто. // 5 платформ · 1 бэк

Заказ-наряд · UX-карта

// happy path · 5 узлов · 3 актора
— водитель
Запись на ТО
через PWA
— СТО
Подтверждает
в чате
— парк
Согласует
лимит
— замок
Двигатель
разблокирован
— финал
Оплата
сверка с 1С

7 болей из записи разговоров

// перефразировано · сохраняем смысл

«Заранее спецификации не работают. Информация прилетает хаотично от подрядчиков и СТО.»

→ Статус «Info» как первоклассная сущность. Time-based workflow принимает хаос на вход.

«Задачи должны быть строками, не карточками. У нас сотни. Мы скроллим, не пагинируем. Никогда не кликаем в detail.»

→ Row-based список, без пагинации. Всё inline. Drag-to-reorder.

«2–3 скриншота на задачу — до, после, иногда промежуточный. Визуал — 60–70% задачи.»

→ Multi-screenshot на ЗН (v0.1.14). Visual-first row layout.

«Inline-редактирование. Клик по тексту — редактируешь. Никогда popup, никогда отдельная страница.»

→ Всё contenteditable в строке.

«Группируем по неделе проекта. 26W17, 26W18. Нужен разделитель, не отдельная папка.»

→ Week-divider headers внутри проектных групп. Auto-collapse исторических недель.

«Комментарии должны иметь автора. „Вася, исправь это“ vs „окей, принято“ vs „Вася, пожалуйста“ — каждый нужно атрибутировать.»

→ Pin-комментарии на изображении с автором + аватар (v0.1.12).

Цитаты сначала. Каждое решение в дизайне — реверс-перевод фразы из записи. Без них продукт превращается в трекер «как у нас», а не в инструмент «как им нужно».

— 03 / Driver PWA

Пять табов.
Один замок.

Водительское PWA на пяти вкладках. Центральная круглая кнопка — это не просто tab, а физический unlock двигателя. Пока ТО не закрыто, она блокирует машину на стороне телематики.

— 01 · Моё авто

Баланс, пробег, уровень.

Один экран отвечает на три вопроса: сколько у меня денег, что с ТО, какой у меня уровень кэшбэка. Если ТО просрочено — красная плашка наверху, и водитель не позвонит в парк, чтобы спросить когда чинить.

— 02 · Сервис

Шесть полей. Пять уже заполнены.

Имя, договор, телефон, марка, гос-номер — всё подтянуто из 1С автоматически. Водитель выбирает только тип работ, СТО, дату и время. Заявка прилетает в чат СТО без ручного ввода.

— 03 · Замок (центр)

Не дизайн-решение —
бизнес-правило.

Пока заказ-наряд не согласован парком и СТО, кнопка горит красным и двигатель машины физически не разблокируется. После закрытия ТО — зелёная: «Двигатель разблокирован — заявка не требуется».

— 04 · Друзья + AI

5 000 ₽ за друга,
AI за всё остальное.

Реф-программа: 5 000 ₽ при пополнении друга от 10 000 ₽, кэп 15 000 ₽. AI Помощник перехватывает 80% типовых вопросов («какой баланс», «когда ТО», «как ездить бесплатно») — оператор подключается только к небанальному.

— 05 / Результат

К моменту запуска,
в проде.

Версия v3.22.293. Водительское PWA + VK Mini App + Android APK + RuStore + админ-консоль на одном бэкенде. Production: навигатораппспб.рф/app/.

161авто в системе
16партнёрских СТО
195заказ-нарядов в обороте
0расхождений с 1С
70сценариев AI на 11 ролей
5городов · 5 платформ
1 135событий в логах
Нужна похожая автоматизация для твоего парка?
Записаться на бесплатный 20-мин AI-Аудит