From 2a570833f4aff060750a0dc917b7ac3313360b14 Mon Sep 17 00:00:00 2001 From: wasrusgen Date: Fri, 29 May 2026 17:04:43 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20presentation=20arch=20v3=20=E2=80=94=20?= =?UTF-8?q?SVG=20=D0=B8=D0=BA=D0=BE=D0=BD=D0=BA=D0=B8=20=D0=BF=D0=BE=20?= =?UTF-8?q?=D0=B1=D1=80=D0=B5=D0=BD=D0=B4=D0=B1=D1=83=D0=BA=D1=83,=20?= =?UTF-8?q?=D1=83=D0=B1=D1=80=D0=B0=D0=BD=D1=8B=20=D1=8D=D0=BC=D0=BE=D0=B4?= =?UTF-8?q?=D0=B7=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/presentation_architecture.html | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/presentation_architecture.html b/docs/presentation_architecture.html index 93fd142..04de5d2 100644 --- a/docs/presentation_architecture.html +++ b/docs/presentation_architecture.html @@ -304,7 +304,7 @@ .seccard{ background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px 18px; } - .seccard .si{font-size:22px;margin-bottom:8px;display:block} + .seccard .si{display:block;margin-bottom:8px} .seccard h4{font-size:16px;font-weight:700;margin-bottom:5px} .seccard p{color:var(--muted);font-size:12.5px;line-height:1.5} .seccard.b1{border-color:rgba(118,189,34,.35)} @@ -443,12 +443,12 @@
🖥️

Frontend

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

⚙️

Backend

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

-
🗄️

База данных

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

+

База данных

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

Кеш / сессии

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

📦

Файлы

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

🚀

Деплой

Docker Compose + GitHub Actions CI/CD

-
☁️

Хостинг

VPS: Hetzner / Timeweb / Selectel

-
🔒

Сеть

Nginx reverse-proxy + Let's Encrypt HTTPS

+

Хостинг

VPS: Hetzner / Timeweb / Selectel

+

Сеть

Nginx reverse-proxy + Let's Encrypt HTTPS

@@ -500,7 +500,7 @@

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

-
📋

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

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

+

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

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

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

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

📡

Мониторинг

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

🔄

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

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

@@ -703,12 +703,12 @@
B · Безопасность
-
🔐

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

Каждый клиент — отдельная PostgreSQL БД. Код одного клиента физически не может достать данные другого.

-
🔑

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

Access (15 мин) + Refresh (30 дней). Роль и salonId в payload. Проверка на каждом запросе.

-
🔒

HTTPS / TLS

Let's Encrypt, автообновление. HTTP → 301 redirect. HSTS включён.

-
💾

Резервные копии

Ежедневный pg_dump в S3. Хранение 30 дней. RTO < 1 ч, RPO < 24 ч.

-
👁

Аудит-лог

Каждое изменение заказа/клиента — с userId + timestamp. Просмотр только admin/owner.

-
🛡

RBAC

5 ролей (owner, admin, manager, measurer, assembler). Матрица прав в SCHEMA.md.

+

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

Каждый клиент — отдельная PostgreSQL БД. Код одного клиента физически не может достать данные другого.

+

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

Access (15 мин) + Refresh (30 дней). Роль и salonId в payload. Проверка на каждом запросе.

+

HTTPS / TLS

Let's Encrypt, автообновление. HTTP → 301 redirect. HSTS включён.

+

Резервные копии

Ежедневный pg_dump в S3. Хранение 30 дней. RTO < 1 ч, RPO < 24 ч.

+

Аудит-лог

Каждое изменение заказа/клиента — с userId + timestamp. Просмотр только admin/owner.

+

RBAC

5 ролей (owner, admin, manager, measurer, assembler). Матрица прав в SCHEMA.md.