From cd250dca3bd3810eac75174f82462f05aba6d4e6 Mon Sep 17 00:00:00 2001 From: wasrusgen Date: Fri, 29 May 2026 16:30:08 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20presentation=20=E2=80=94=20=D0=B0=D1=80?= =?UTF-8?q?=D1=85=D0=B8=D1=82=D0=B5=D0=BA=D1=82=D1=83=D1=80=D0=B0=20=D0=B8?= =?UTF-8?q?=20=D0=B2=D0=B2=D0=BE=D0=B4=20=D0=BF=D1=80=D0=BE=D0=B5=D0=BA?= =?UTF-8?q?=D1=82=D0=B0=20=D0=B2=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D1=83=20?= =?UTF-8?q?(14=20=D1=81=D0=BB=D0=B0=D0=B9=D0=B4=D0=BE=D0=B2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/presentation_architecture.html | 618 ++++++++++++++++++++++++++++ 1 file changed, 618 insertions(+) create mode 100644 docs/presentation_architecture.html diff --git a/docs/presentation_architecture.html b/docs/presentation_architecture.html new file mode 100644 index 0000000..0380e4c --- /dev/null +++ b/docs/presentation_architecture.html @@ -0,0 +1,618 @@ + + + + + +Архитектура платформы @wasrusgen1 CRM + + + + + + +
+
+ + +
+
+
@wasrusgen1 CRM · PLATFORM ARCHITECTURE
+

Архитектура платформы
@wasrusgen1 CRM

+

Один продукт — много клиентов. Полный контроль.

+
+
Документ дляСобственника системы
+
ТемаВвод проекта в работу
+
Дата2026
+
+
+
+ + +
+
+
Слайд 02 · Big picture
+

Карта системы

+

Единый код в GitHub разворачивается на VPS. Каждый клиент — отдельный поддомен и отдельная база.

+
+
+
Руслан · Мастер-панельуправление всеми проектами
+
+
GitHubединый исходный код
+
авто-деплой CI/CD
+
VPS сервер · Nginx + Dockerроутинг по поддоменам
+
+
+
salon1.crm.ru→ PostgreSQL DB_1
+
salon2.crm.ru→ PostgreSQL DB_2
+
salonN.crm.ru→ PostgreSQL DB_N
+
+
+
+
+
+ + +
+
+
Слайд 03 · Стратегия
+

Три модели управления

+

Как обслуживать множество клиентов на одной кодовой базе.

+
+
+
+
A
+

Мультитенант

+

Один деплой, одна БД, разделение по tenant_id. Дёшево в масштабе, но слабая изоляция и риск общего сбоя.

+
сложно стартовать
+
+
+
B
+

Мультидеплой

+

Отдельный контейнер + отдельная БД на клиента. Полная изоляция, простой старт, легко считать расходы по клиенту.

+
★ старт здесь
+
+
+
C
+

Гибрид

+

Общий код и инфра-слой, изолированные БД, общий мониторинг и единое обновление. Баланс цены и изоляции на росте.

+
★ цель
+
+
+
Рекомендация: начать с модели B (мультидеплой) → перейти на C (гибрид) при 5+ клиентах.
+
+
+
+ + +
+
+
Слайд 04 · Процесс
+

Жизненный цикл нового проекта

+

От подписи договора до запуска — около 3 рабочих дней.

+
+
+
01
Договор с клиентомсогласование условий, тариф, доступы
1 день
+
02
Настройка инстансасоздание БД, конфиг, поддомен, деплой
2–4 ч
+
03
Загрузка данныхсалоны, пользователи, справочники
1–2 ч
+
04
Обучение командыКД, администраторы, мастера
1–2 дня
+
05
Старт → техподдержкапилот, мониторинг, SLA
запуск
+
+
+
+
+ + +
+
+
Слайд 05 · Технологии
+

Стек технологий

+

Проверенные инструменты, без экзотики — быстрый найм и поддержка.

+
+
+
🖥️

Frontend

HTML/JS (текущий прототип) → React в v2

+
⚙️

Backend

Node.js + Express — REST API, авторизация

+
🗄️

База данных

PostgreSQL — одна БД на клиента

+

Кеш / сессии

Redis — сессии, очереди, кеш

+
📦

Файлы

S3 / MinIO — фото, документы, экспорты

+
🚀

Деплой

Docker Compose + GitHub Actions CI/CD

+
☁️

Хостинг

VPS: Hetzner / Timeweb / Selectel

+
🔒

Сеть

Nginx reverse-proxy + Let's Encrypt HTTPS

+
+
+
+
+ + +
+
+
Слайд 06 · Данные
+

Схема базы данных

+

8 ключевых сущностей. Каждый клиент получает изолированную копию этой схемы.

+
+
+
+
# SCHEMA.md — ER-диаграмма (одна БД на клиента)
+
+  ┌────────────┐┌────────────┐┌────────────┐│  salons    │──1:N──│   users    │──1:N──│shiftRequest│└─────┬──────┘└─────┬──────┘└────────────┘│ 1:N│ 1:N┌─────┴──────┐┌─────┴──────┐┌────────────┐│  clients   │──1:N──│   orders   │──1:N──│  ratings   │└─────┬──────┘└─────┬──────┘└────────────┘│ 1:N│ 1:N┌─────┴──────┐┌─────┴──────┐│appointments│───────││  requests  │└────────────┘└────────────┘salons      → сеть салонов клиента
+  users       → сотрудники (КД / админ / мастер)
+  clients     → клиентская база салона
+  orders      → сделки / заказы
+  appointments→ записи на услуги
+  requests    → заявки / лиды
+  shiftRequests→ заявки на смены сотрудников
+  ratings     → оценки и обратная связь
+
+
+
+
+ + +
+
+
Слайд 07 · Инструмент владельца
+

Мастер-панель Руслана

+

Что нужно разработать для управления всем парком проектов из одного места.

+
+
+
📋

Список проектов

Все клиентские инстансы: статус, last activity, число пользователей, тариф.

+

Создать новый проект

Кнопка «Новый проект» → деплой инстанса в 1 клик (или скриптом).

+
📡

Мониторинг

Uptime, ошибки, нагрузка CPU/RAM, статус БД по каждому клиенту.

+
🔄

Массовое обновление

Выкатить новую версию на все проекты одновременно одной командой.

+
+
+
+
+ + +
+
+
Слайд 08 · Onboarding
+

Как подключить нового клиента

+

Интерактивный чеклист — кликните по пунктам. Прогресс сохраняется в сессии.

+
+
+
Подписан договор
+
Получены данные: сеть, салоны, сотрудники
+
Создан поддомен client-name.wasrusgen1.ru
+
Развёрнута БД и заполнены справочники
+
Созданы учётные записи (КД, Администраторы)
+
Проведено обучение команды
+
Запущен пилот
+
+
+
+
+ + +
+
+
Слайд 09 · Инфраструктура
+

Инфраструктура и стоимость

+

Расходы растут вместе с числом клиентов — на старте почти нулевые.

+
+
+ + + + + + + + +
ЭтапКонфигурация$/мес
Прототип (сейчас)GitHub Pages$0
Пилот (1–3 клиента)VPS 2CPU / 4GB + Postgres~$25–35
Рост (4–10 клиентов)VPS 4CPU / 8GB + backup~$50–80
Масштаб (10+ клиентов)2 VPS + балансировщик~$120–200
+
+
При 8 000 ₽/мес с клиента стоимость инфраструктуры — менее 3 % от выручки даже на масштабе.
+
+
+
+ + +
+
+
Слайд 10 · Экономика
+

Экономика продукта · P&L

+

Точка безубыточности — первый же клиент. Маржа растёт с каждым следующим.

+
+
+
+
— РАСХОДЫ / мес
+
Сервер (VPS + Postgres)~$35
+
Поддержка (N часов)переменные
+
Прочее (домены, бэкап)~$5
+
Итого база~$40
+
+
+
+ ДОХОДЫ / мес
+
Тариф на клиента8 000 ₽
+
5 клиентов40 000 ₽
+
10 клиентов80 000 ₽
+
Модель X × 8 000 ₽растёт линейно
+
+
+
+
Break-even1 клиент
+
Целевая маржа85 %+
+
При5+ клиентах
+
+
+
+
+ + +
+
+
Слайд 11 · Roadmap
+

Roadmap продукта

+

Четыре фазы — от прототипа до AI-функций.

+
+
+
+
+
Фаза 1 · сейчас

Прототип

Готовый интерфейс → первый пилотный клиент.

+
+
+
+
Фаза 2

Бэкенд

Node.js + PostgreSQL + авторизация (JWT).

+
+
+
+
Фаза 3

Мобильное (PWA)

Установка на телефон, офлайн, push-уведомления.

+
+
+
+
Фаза 4

AI-функции

Прогноз сделок, автоматизация рутины, аналитика.

+
+
+
+
+
+ + +
+
+
Слайд 12 · Безопасность
+

Безопасность и изоляция данных

+

Данные каждого клиента физически отделены — утечка одного не затрагивает других.

+
+
+
🧱

Физическая изоляция

Каждый клиент — отдельная БД. Данные не пересекаются на уровне хранилища.

+
🔑

JWT авторизация

Токены доступа, роли и права на уровне API.

+
🔐

HTTPS везде

Let's Encrypt, авто-обновление сертификатов на всех поддоменах.

+
💾

Бэкапы ежедневно

Автоматический бэкап каждой БД, хранение и восстановление.

+
📤

Экспорт данных

Клиент может запросить выгрузку своих данных в любой момент.

+
📜

Соответствие ПДн

Хранение в РФ, разграничение доступа, журналирование.

+
+
+
+
+ + +
+
+
Слайд 13 · Обязательства
+

SLA и поддержка

+

Понятные обязательства перед клиентом — основа доверия и удержания.

+
+
+
⏱️

Uptime

99.5 %

+
📞

Реакция

4 ч

в рабочее время

+
🔁

Обновления

2 нед

регулярный цикл

+
🚀

Onboarding

3 дня

до запуска

+
+
+
+
+ + +
+
+
Слайд 14 · План действий
+

Следующие шаги

+

Конкретный план на 4 недели — от выбора клиента до запуска пилота.

+
+
+
W1
Выбрать первого пилотного клиентасеть салонов, готовая дать данные и команду
Неделя 1
+
W2
Развернуть бэкенд на VPSNode.js + PostgreSQL + Docker + CI/CD
Неделя 2
+
W3
Перевести прототип на реальные данныеподключить API, загрузить салоны и пользователей
Неделя 3
+
W4
Запуск пилота с командой клиентаобучение, мониторинг, сбор обратной связи
Неделя 4
+
+
Готов начать с недели 1 — нужен выбор пилотного клиента.
+
+
+
+ +
+ +
@wasrusgen1 · CRM PLATFORM
+
01 / 14
+ + + + + +