|
|
||
|---|---|---|
| .. | ||
| SEO-farm | ||
| app | ||
| infra | ||
| server | ||
| .editorconfig | ||
| .env.example | ||
| .gitignore | ||
| README.md | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.base.json | ||
README.md
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, stablepages/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.
Структура
app/ React/Vite UI
server/ Node.js backend
infra/ Postgres + MinIO local infrastructure
SEO-farm/ архитектурная документация
Запуск
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:
npm run dev:server