feat: initialize full-stack architecture with backend routes, database schema, and glassmorphic frontend UI

This commit is contained in:
2026-05-13 00:12:19 +03:00
parent bd73f18d5c
commit 0732acbda5
21 changed files with 1937 additions and 307 deletions

111
README.md
View File

@@ -1,54 +1,81 @@
# AutoMarket (OzonGuard)
# 🚀 AutoMarket Ultimate Marketplace SaaS Platform
**AutoMarket** — это универсальное веб-приложение для интеграции, управления и автоматизации процессов сразу на 10 маркетплейсах. Система позволяет хранить ключи API, быстро подготавливать жалобы на нарушителей и гибко расширять функционал.
**AutoMarket** — это комплексная экосистема для профессиональных продавцов на маркетплейсах (Ozon, Wildberries и др.), объединяющая в себе инструменты защиты контента, финансовой аналитики, SEO-мониторинга и автоматизации клиентского сервиса с помощью искусственного интеллекта.
## Поддерживаемые Маркетплейсы
1. **Ozon**
2. **Wildberries**
3. **Yandex Market**
4. **Magnit Market**
5. **MegaMarket**
6. **AliExpress (AE Platform)**
7. **Avito**
8. **Lamoda**
9. **Lemana PRO (Леруа Мерлен)**
10. **Flowwow**
---
## Основной функционал
## 💎 Ключевые возможности
- **Настройки Интеграций:** Единый интерфейс для ввода и хранения API ключей всех 10 площадок. Больше не нужно копаться в .env файлах.
- **Управление кейсами (жалобами):** Создание универсальных жалоб (кейсов) с указанием маркетплейса, ссылок на карточку нарушителя и его артикула.
- **Прикрепление доказательств:** Загрузка изображений и PDF в качестве доказательной базы.
- **Статусы кейсов:** Отслеживание статусов: *Новый*, *Подготовлен*, *Отправлен*, *Закрыт*.
- **Умный поиск:** Поиск по артикулу и фильтрация по площадке или статусу.
### 1. 🤖 AI Assistant (Интеграция с Google Gemini)
* **Авто-претензии:** Генерация юридически грамотных жалоб на нарушителей на основе артикула и площадки.
* **Умный ответчик:** Автоматическая генерация персонализированных ответов на отзывы покупателей (поддержка позитивного и отработка негативного сценария).
## Технологический стек
### 2. 📊 Multi-account Dashboard
* Единое окно управления для неограниченного количества магазинов и юридических лиц.
* Агрегированная статистика продаж, выручки и состояния API-подключений в реальном времени.
- **Frontend:** HTML5, CSS3, Vanilla JavaScript (с красивым дизайном Glassmorphism).
- **Backend:** Python 3.9+, Flask.
- **База данных:** PostgreSQL.
- **SDK:** 10 независимых, отказоустойчивых Python библиотек для каждого маркетплейса (включая автоматические ретраи, OAuth, JWT и Exponential Backoff).
### 3. 📈 SEO Мониторинг позиций
* Отслеживание позиций товаров по ключевым словам в поиске маркетплейсов.
* Интерактивные графики динамики позиций с инвертированной шкалой (ТОП-1 всегда сверху).
## Установка и запуск (Linux/macOS)
### 4. 🛡️ Защита контента (Image Matching)
* Вычисление визуальных отпечатков (pHash) для ваших фотографий.
* Автоматический поиск визуальных клонов и дубликатов вашего контента у конкурентов.
* Бесшовная подача жалобы на найденного нарушителя в один клик.
В проекте предусмотрен bash-скрипт `init.sh` для автоматической настройки окружения.
### 5. 💰 Финансовый калькулятор (Unit Economics)
* Детальный расчет чистой прибыли, маржинальности и ROI.
* Учет комиссий маркетплейса, налогов (УСН), логистики и рекламных расходов (ДРР).
1. Убедитесь, что у вас установлены Python 3.9+ и PostgreSQL (`psql`).
2. Настройте подключение к БД в файле `backend/.env` (переменная `DATABASE_URL=postgresql://user:password@localhost:5432/dbname`).
3. Выполните скрипт инициализации из корневой директории:
```bash
bash init.sh
```
### 6. 📑 Генерация отчетов
* Экспорт данных в CSV.
* Генерация профессиональных PDF-претензий с поддержкой кириллицы для отправки в поддержку маркетплейса.
**Что делает скрипт `init.sh`:**
- Проверяет наличие Python 3 и создает виртуальное окружение `venv`.
- Устанавливает Python-зависимости из файла `backend/requirements.txt`.
- Инициализирует базу данных с помощью файла `db/init.sql` (если настроен `.env`).
- Запускает локальный Flask-сервер на порту `5000`.
---
## Структура репозитория
## 🎨 Дизайн и интерфейс
* **Premium Dark Mode:** Элегантная темная тема для комфортной работы.
* **Glassmorphism:** Современный "стеклянный" интерфейс с эффектами размытия и неоновыми акцентами.
* **Real-time Notifications:** Мгновенные уведомления через WebSockets (Socket.io) при обнаружении новых событий.
* **Lucide Icons:** Использование современной библиотеки иконок для интуитивной навигации.
- `/frontend/` — статические файлы пользовательского интерфейса (страницы, стили, логика на JS).
- `/backend/` — серверная часть на Flask (точка входа `app.py`, обработка маршрутов API в `routes/`).
- `/db/` — SQL-скрипты для инициализации таблиц базы данных.
- `init.sh` — стартовый скрипт для быстрого развертывания проекта.
---
## 🛠 Технологический стек
* **Backend:** Python (Flask), Flask-SocketIO (Real-time), Flasgger (Swagger/OpenAPI).
* **Frontend:** Vanilla JS, Chart.js (Графики), Lucide (Иконки).
* **Database:** PostgreSQL.
* **AI:** Google Gemini 1.5 Flash API.
* **DevOps:** Docker, Docker Compose.
---
## 🚀 Быстрый запуск
### 1. Требования
* Установленный Docker и Docker Compose.
* API ключ Google AI Studio (для работы ИИ).
### 2. Настройка окружения
Создайте файл `backend/.env` и заполните его:
```env
DATABASE_URL=postgresql://user:pass@host.docker.internal:5432/automarket
JWT_SECRET=your_super_secret_key
TELEGRAM_BOT_TOKEN=your_bot_token
TELEGRAM_CHAT_ID=your_chat_id
GEMINI_API_KEY=your_gemini_api_key
```
### 3. Запуск через Docker
```bash
docker-compose up --build
```
После запуска:
* Frontend: `http://localhost:8080`
* Backend API: `http://localhost:5000`
* Swagger Docs: `http://localhost:5000/api/docs`
---
## 📜 Аудит и Безопасность
Проект включает встроенную систему **Audit Log**, которая фиксирует все важные действия пользователя (вход, создание/удаление объектов, финансовые расчеты) для обеспечения полной прозрачности и безопасности бизнеса.