# seo_mode Workspace

Рабочая папка для разработки seo_mode.

Архитектурная документация лежит в `SEO-farm/`.

## Текущий статус

Код приложения уже инициализирован.

Готов текущий MVP-срез:

- React/Vite UI и Node.js backend.
- Postgres + MinIO через `infra/docker-compose.yml`.
- Миграции базовой проектной модели.
- Создание, переименование, копирование и удаление проектов.
- Импорт папки через browser folder picker / drag-and-drop в MinIO.
- Скан проекта, `scan_version`, stable `pages/media`, повторный scan.
- `project-index.json` как JSON-снимок скана в MinIO.
- Baseline audit по выбранным страницам: title, description, H1/headings, видимый текст, media/ALT/filename.
- UI выбора страниц деревом по путям, severity-фильтры, media issue list и просмотр ошибок только по выбранным страницам.
- Page Workspace MVP: preview страницы, ошибки выбранной страницы, логические секции, section editor, save/reset без изменения исходного проекта.

Текущий этап: довести `Page Workspace / Draft Model` до кликабельного редакторского сценария и подготовить следующий шаг `Model Provider / Codex Exec`.

## Базовые решения

- `Postgres` — основной источник истины.
- `MinIO/S3` — хранилище raw artifacts, snapshots, reports, backups и exports.
- `browser_folder` — текущий рабочий source adapter для импорта папки в MinIO и будущей hosted-версии.
- `local_folder` — dev/local adapter для ручного абсолютного пути.
- `scan_version + reconcile` — модель повторного скана без потери утверждённых решений.
- `Apply` проходит через changeset, dry-run, backup и rollback.

## Структура

```text
app/       React/Vite UI
server/    Node.js backend
infra/     Postgres + MinIO local infrastructure
SEO-farm/  архитектурная документация
```

## Запуск

```powershell
npm install
Copy-Item .env.example .env
docker compose -f infra/docker-compose.yml up -d
npm run db:migrate
npm run dev
```

Если Docker Desktop не установлен, backend можно запустить без deep health checks:

```powershell
npm run dev:server
```
