Денис Ганшин · демо
Живой демо-стенд · настоящий код · синтетические данные

Системы, которые продают и обслуживают клиентов вместо людей — открыты и работают

Две CRM с AI-ботами на первой линии, мультиканальные рассылки, доведённые до выручки, кабинет руководителя и регистрация по QR с электронной подписью. Всё ниже — тот же код, что работает у моих клиентов, только на сгенерированных данных со сбросом каждые 6 часов. Входите, кликайте, проверяйте. Внутри каждого продукта — обучающий маршрут: что перед вами и почему это важно.

1 200синтетических клиентов, 11,7 тыс. визитов
100+воркфлоу n8n в проде
10 спервый ответ AI-бота (было 15–20 мин)
0 минадминистратора на регистрацию по QR

Что внутри

Три продукта, три отдельных хоста, одна изолированная база. Доступы публичные — стенд сам себя сбрасывает.

Манеж — CRM-платформа батутного центра

WhatsApp · MAX · VK · YClients · n8n · Fastify · React · Postgres · FastAPI
  • AI-бот продаёт до записи, понимает голос, фото и документы, передаёт человеку с контекстом
  • Одна карточка клиента по всем мессенджерам и системе записи
  • Каскадные рассылки с сегментами, A/B и воронкой до выручки
  • Кабинет руководителя: выручка, теплокарта загрузки, аналитика по сотрудникам — в реальном времени
  • Роли и управление доступами команды
демо-доступowner@manezh.demo / demo-portfolio-2026
Открыть →

Enjoyers — CRM туроператора

Telegram · Instagram · WhatsApp через SendPulse · RAG · генерация docx/pdf
  • Мультимессенджер с обновлением в реальном времени и переводом в один клик
  • AI-консультант первой линии, считающий цену тура в диалоге
  • Канбан наборных туров, воронка индивидуальных сделок
  • Экономика тура: план/факт, рекомендованная цена, доля менеджера
  • Договоры и счета из карточки сделки
демо-доступ (подойдёт любой e-mail)owner@enjoyers.demo / demo-portfolio-2026
Открыть →

Регистрация по QR с электронной подписью

Статическая форма · n8n · подпись по SMS · запись в CRM
  • Гость сканирует QR на стойке и заполняет анкету со своего телефона
  • Взрослый, дети, согласия — проверка до показа расписки
  • Данные уходят на вебхук, документ подписывается по SMS, карточка в CRM появляется сама
  • На демо вебхук и подписание — заглушки, наружу ничего не уходит
вход не нужензаполните любыми данными
Открыть →

Как проверить за 10 минут

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

Манеж → Диалоги → Светлана Медведева

Бот сам довёл клиента от вопроса до брони с предоплатой. Затем откройте Наталью Зайцеву: голосовое расшифровано и отвечено по сути.

Манеж → Рассылки → кампания «День рождения»

Доставлено, ответили, купили, выручка и A/B в одной карточке — числа считаются из трёх независимых источников и сходятся.

Манеж → Кабинет

Выручка против прошлого периода, теплокарта по дням и часам, кто отвечает клиентам (менеджеры, бот, рассылки) с медианой времени ответа.

Enjoyers → Диалоги → Marta Nowak → «RU»

Клиентка пишет по-польски; один переключатель показывает всю переписку по-русски. Затем Тимур Ержанов: AI-консультант считает цену для группы из 20 человек.

Enjoyers → CRM → Индивидуальные → любая сделка

Экономика тура пересчитывается на лету при правке статьи расходов; договор собирается по реквизитам клиента.

Регистрация по QR → заполнить → расписка → «подписать»

Весь путь гостя от QR на стойке до подписанного документа — с заглушками вместо внешних сервисов.

Как устроен стенд — и чего он намеренно не умеет

Честность — часть месседжа: публичный стенд спроектирован так, чтобы физически не мог задеть ничего настоящего.

Изоляция

Свой Postgres в отдельном контейнере без опубликованных портов; приложения ходят под ролью без суперправ. Ни одного боевого ключа: мессенджеры, LLM и хранилище не сконфигурированы — отправить наружу нечем. Вебхуки регистрации — заглушки.

Сброс и сдвиг времени

Каждые 6 часов базы восстанавливаются из золотого дампа, а все даты сдвигаются к «сегодня» с шагом в целые недели — кабинет всегда показывает живой месяц, а дни недели не плывут. Ломайте что угодно.

Политика шлюза

Небольшой шлюз на Node перед продуктами блокирует смену паролей и разрушительные действия над учётками (чтобы следующий посетитель вошёл), ограничивает частоту запросов по IP и помечает каждый ответ заголовком x-demo-stand: synthetic-data. Код продуктов не тронут.

Что здесь не работает нарочно

AI-бот не отвечает живьём (на публичном стенде нет LLM-ключа — его ответы видны в засеянных диалогах), исходящие остаются внутри CRM, файлы не грузятся в хранилище. Всё остальное — по-настоящему.

Стек: Node.js/Fastify, React/Vite, PostgreSQL (LISTEN/NOTIFY → WebSocket), FastAPI для рассылок, n8n для интеграций, Docker Compose за Traefik с Let's Encrypt на VPS. Код генерируется через Claude Code; архитектура, отладка и прод — мои.

Обо мне

Денис Ганшин — AI Automation Specialist. Строю системы, которые продают и обслуживают клиентов вместо людей: от первой линии в мессенджерах до CRM, документооборота, рассылок и производства контента. До этого — сооснователь и операционный директор туркомпании и операционный менеджер в группе компаний, поэтому проектирую под бизнес, а не под демо.

Ищу фултайм in-house роль, где у автоматизации и AI есть измеримый владелец. Удалённо; базируюсь в Алматы.