VIBE GO
Flutter Taxi Application
Мобильное такси-приложение на Flutter: клиент, водитель, веб-админка. Supabase + Яндекс Карты + Telegram Bot.

О проекте
VIBE GO — полноценная экосистема для такси-сервиса, построенная на Flutter с использованием Supabase в качестве бэкенда.
Включает 3 приложения: Client (заказ такси для пассажиров), Driver (для водителей с верификацией), Admin (веб-панель управления). Все мобильные приложения на Flutter с единой кодовой базой.
Реализована геолокация в реальном времени через Supabase Realtime, интеграция с Яндекс Картами для маршрутов, авторизация через Telegram Bot с deep linking. Система тарифов (Эконом/Комфорт/Бизнес), рейтинги, чат между клиентом и водителем, реферальная программа.
Технологии
Ключевые функции
3 приложения
Client, Driver, Admin (Web)
Supabase Backend
Auth, Database, Realtime, Storage
Яндекс Карты
Геолокация и построение маршрутов
Telegram Auth
Авторизация через бота с deep links
Система тарифов
Эконом, Комфорт, Бизнес
Верификация водителей
Фото документов, проверка админом
Задача клиента → Результат
Как я решил бизнес-задачу и какую ценность это принесло
Задача клиента
Заказчику нужно было мобильное такси-приложение для локального рынка — аналог Uber/Яндекс.Такси, но с Telegram-авторизацией, так как пользователи региона привыкли к мессенджеру. Требовались три отдельных приложения: для пассажиров, водителей и администраторов.
Что я сделал
Я разработал единую кодовую базу на Flutter с тремя entry points для разных приложений. Supabase обеспечивает бэкенд: PostgreSQL для данных, Realtime для отслеживания водителей, Edge Functions для бизнес-логики (расчёт цены, поиск водителей), Storage для фото верификации. Telegram Bot с deep linking для бесшовной авторизации.
Бизнес-результат
- Единая кодовая база Flutter для 3 приложений — экономия 40% времени разработки
- Telegram-авторизация за 2 клика без ввода телефона и пароля
- Realtime-отслеживание водителей на карте с обновлением каждые 2 секунды
- Система верификации водителей с загрузкой документов и проверкой админом
- 3 тарифа (Эконом/Комфорт/Бизнес) с автоматическим расчётом стоимости
- Чат между клиентом и водителем во время поездки
Как это работает
Нажмите «Запустить демо» чтобы увидеть путь пользователя по шагам
От открытия приложения до поездки
Авторизация
Вход через Telegram бота за 2 клика
Выбор маршрута
Откуда/Куда на карте Яндекс
Выбор тарифа
Эконом, Комфорт или Бизнес
Поиск водителя
Edge Function ищет ближайших онлайн-водителей
Отслеживание
Realtime-позиция водителя на карте
Поездка и оплата
Чат, оценка, оплата наличными/картой
Что даёт бизнесу
Каждое решение = конкретная выгода для бизнеса: экономия, скорость, конверсия
Flutter + единая кодовая база
Три приложения (Client, Driver, Admin) из одного проекта с разными entry points. Общие компоненты, модели, сервисы. Экономия 40% времени на разработку и поддержку.
Supabase Backend
PostgreSQL с Row Level Security для безопасности данных. Realtime subscriptions для отслеживания водителей. Edge Functions (Deno) для серверной логики. Storage для фото документов.
Telegram Deep Linking
Авторизация через Telegram бота: пользователь нажимает кнопку → бот создаёт сессию → deep link открывает приложение с токеном. Никаких паролей, OTP-кодов.
Яндекс MapKit
Интеграция с Яндекс Картами для геолокации, построения маршрутов, расчёта расстояния и времени. Отображение водителей в реальном времени.
Как это устроено
Многоуровневая архитектура для надёжности: каждый слой отвечает за свою задачу
Mobile Apps (Flutter)
Admin Panel (Flutter Web)
Supabase Backend
Edge Functions (Deno)
External Services
Работает на лучших решениях
Интегрированы мировые лидеры: Stripe для платежей, OpenAI для AI, SendGrid для писем — надёжность и масштаб
Supabase
Backend-as-a-Service: PostgreSQL, Auth, Realtime, Storage, Edge Functions
Flutter BLoC
State management с разделением бизнес-логики и UI
Yandex MapKit
Карты, геолокация, маршруты, геокодинг
Telegram Bot
Авторизация через бота с deep links в приложение
GoRouter
Декларативный роутинг с deep link поддержкой
Geolocator
Отслеживание позиции водителя в фоне
Заинтересовал проект? Свяжитесь со мной для обсуждения деталей.