# SUNPOLE HUB — история работы, roadmap и список задач

## Текущий этап

Проект перешёл из стадии идеи в стадию рабочих прототипов и начал превращаться в связанную платформу.

Сейчас есть:

- старый `shop.html` как визуальная отправная точка;
- `hub.html` как первый технический прототип;
- `hub-v2.html` как первая визуальная версия;
- `hub-v3.html` как версия с улучшенным Project Passport и тегами;
- `hub-v4.html` как версия с рабочим сравнением проектов;
- `hub-v5.html` как версия со связкой HUB → Project View;
- `hub-current.html` как текущая стабильная точка входа;
- `hub-versions.html` как переключатель контрольных HTML-версий;
- `project-view.html` как первая страница отдельного проекта;
- `project-view-v2.html` как Project View с галереей;
- `overlay-test.html` как лаборатория HUB Overlay;
- `overlay-demo-project.html` как демо-проект с Overlay;
- `project-moved.html` как шаблон страницы переезда проекта;
- `assets/hub/hub-project-overlay.js` как Overlay-виджет;
- `data/projects-hub.js` как новая база проектов;
- `docs/hub-version.html` как текущая страница версии;
- `docs/sunpole-hub-vision.md` как концепция и видение.

## Главная цель

Создать личный визуальный магазин/хаб проектов `SUNPOLE HUB`, который работает как:

- каталог проектов;
- витрина;
- технический паспорт;
- история версий;
- инструмент сравнения;
- админка;
- локальный автоматизатор базы и скриншотов;
- система аккуратного переноса старых проектов без потери ссылок;
- общая навигационная оболочка для всех проектов.

## Уже сделано

### Документация

- Создана концепция `SUNPOLE HUB`.
- Описан принцип: архив — это статус, а не удаление.
- Описана будущая структура файлов.
- Описана схема данных проекта.
- Описана идея `Project Passport / HUB Overlay`.
- Описана идея локального автоматизатора на Node.js + Playwright.
- Создана страница версии `docs/hub-version.html`.
- Создан переключатель контрольных HTML-версий `hub-versions.html`.
- Создана эта roadmap-страница.

### Данные

- Создан `data/projects-catalog-draft.js`.
- Создан `data/projects-hub.js` с расширенной структурой.
- Добавлены поля:
  - `id`;
  - `title`;
  - `path`;
  - `launchUrl`;
  - `category`;
  - `status`;
  - `maturity`;
  - `featured`;
  - `quality`;
  - `tags`;
  - `description`;
  - `note`;
  - `imageUrl`;
  - `icon`;
  - `source`;
  - `versionOf`;
  - `related`;
  - `links`;
  - `metrics`;
  - `tech`.

### Витрина

- Создан `hub.html`.
- Создан `hub-v2.html`.
- Создан `hub-v3.html`.
- Создан `hub-v4.html`.
- Создан `hub-v5.html`.
- Создан `hub-current.html`.
- Реализованы:
  - карточки проектов;
  - крупные скриншоты;
  - hover-просмотр скриншота;
  - статус проекта;
  - качество A/B/C;
  - звёзды `✶`;
  - HP-бары;
  - языковые бары HTML / JavaScript / CSS;
  - теги;
  - ступенчатые фильтры тегов;
  - фильтры статусов;
  - фильтры категорий;
  - поиск;
  - GitHub-бейдж;
  - кнопка открытия проекта;
  - кнопка Project Passport;
  - кнопка сравнения проектов;
  - переход на страницу проекта.

### Project Passport

- Реализован первый Project Passport через кнопку `⋯`.
- В `hub-v3.html` и `hub-v4.html` Passport открывается рядом с карточкой.
- Повторное нажатие по `⋯` закрывает Passport.
- В Passport отображаются:
  - название проекта;
  - ID;
  - категория;
  - версия HUB;
  - качество;
  - HP-бары;
  - языки;
  - теги;
  - связанные версии;
  - кнопка открытия проекта;
  - ссылка на версию HUB.

### Сравнение проектов

- В `hub-v4.html` реализован первый рабочий режим сравнения.
- Кнопка `⇄` выбирает проект для сравнения.
- Можно выбрать до 4 проектов.
- Выбранные карточки подсвечиваются.
- Появляется нижняя панель сравнения.
- Сравниваются:
  - статус;
  - категория;
  - качество;
  - готовность;
  - визуал;
  - техника;
  - документация;
  - теги;
  - языки;
  - связанные версии.

### Project View

- Создан `project-view.html`.
- Создан `project-view-v2.html`.
- Project View открывает отдельную страницу проекта по ID.
- Пример:

```text
project-view-v2.html?id=3502
```

- На странице проекта есть:
  - большой скриншот;
  - галерея/миниатюры;
  - название;
  - статус;
  - категория;
  - описание;
  - теги;
  - качество;
  - HP-бары;
  - языки;
  - кнопка открытия проекта;
  - кнопка GitHub;
  - похожие и связанные проекты.

### HUB Overlay

- Создан файл `assets/hub/hub-project-overlay.js`.
- Создана лаборатория `overlay-test.html`.
- Создан демо-проект `overlay-demo-project.html`.
- Overlay умеет:
  - появляться поверх проекта;
  - показывать SUNPOLE HUB;
  - показывать название проекта;
  - искать проект в `data/projects-hub.js`;
  - показывать статус;
  - показывать качество A/B/C;
  - показывать звёзды `✶`;
  - показывать балл качества;
  - показывать теги;
  - вести назад в HUB;
  - вести в Project View V2;
  - копировать ссылку;
  - сворачиваться;
  - закрываться до обновления страницы.

### Project Moved

- Создан `project-moved.html`.
- Он показывает:
  - сообщение, что проект переехал;
  - старый адрес;
  - новый адрес;
  - кнопку открытия нового адреса;
  - кнопку перехода в HUB;
  - кнопку копирования нового адреса;
  - подсказку обновить закладку;
  - поддержку автоперенаправления через параметр `delay`.

## Что ещё нужно сделать

### Ближайшие задачи

1. Сделать `Overlay v3`: версия проекта, версия HUB, похожие проекты, связанные версии, мини-статистика.
2. Подключить Overlay к одному реальному проекту после проверки.
3. Улучшить `Project View V2`: история версий, галерея из нескольких скриншотов, кнопка сравнения.
4. Обновить `hub-current.html`, когда появится новая текущая версия HUB.
5. Обновлять `docs/hub-version.html` при каждом крупном патче.

### Project View V3

- Добавить галерею из нескольких реальных скриншотов.
- Добавить блок истории версий проекта.
- Добавить более красивый блок похожих проектов.
- Добавить кнопки:
  - открыть проект;
  - открыть в GitHub;
  - сравнить;
  - вернуться в HUB;
  - скопировать ссылку.

### Project Passport V2

- Сделать Passport визуально богаче.
- Сделать его похожим на смесь:
  - Steam;
  - GitHub;
  - RPG-карточки персонажа;
  - технического паспорта проекта.
- Добавить версию проекта.
- Добавить версию HUB.
- Добавить ссылку на Project View.
- Добавить мини-статусбары.
- Добавить компактный режим.

### HUB Overlay внутри проектов

Нужно развить:

```text
assets/hub/hub-project-overlay.js
```

Он должен показывать:

- название проекта;
- ссылку назад в HUB;
- ссылку на Project View;
- статус;
- теги;
- качество;
- версию проекта;
- версию HUB;
- мини-статистику;
- похожие проекты.

Поведение:

- при первом открытии раскрытый режим;
- можно свернуть;
- можно закрыть до обновления страницы;
- повторное открытие возможно через компактную кнопку.

### Безопасная миграция проектов

Пока нельзя массово переносить папки.

Перед переносом нужно:

1. Создать backup-ветку:

```text
backup-before-structure-move
```

2. Создать карту старых и новых адресов.
3. Протестировать переезд на одном проекте.
4. Добавить moved-страницу.
5. Только потом переносить проекты.

### Ручная админка

Нужен файл:

```text
hub-admin.html
```

Он должен уметь:

- импортировать текущую базу;
- добавлять проект;
- редактировать проект;
- менять статус;
- менять качество;
- менять теги;
- добавлять скриншот;
- добавлять GitHub-ссылку;
- экспортировать обновлённый JS/JSON.

### Локальный автоматизатор

Нужен проект:

```text
tools/hub-builder/
```

Он должен запускаться на ПК пользователя и делать:

- сканирование папок;
- поиск HTML-файлов;
- чтение title;
- поиск скриншотов;
- создание скриншотов через Playwright;
- подсчёт размеров и языков;
- генерацию `projects-hub.js`;
- проверку битых ссылок;
- выявление дубликатов;
- подготовку отчёта.

### Скриншоты

Нужно сделать папку:

```text
assets/hub/screenshots/
```

И позже складывать туда автоматические скриншоты.

### Контрольные версии

Нужно продолжать вести контрольные версии:

- `hub.html` — v0.1;
- `hub-v2.html` — v0.2;
- `hub-v3.html` — v0.3;
- `hub-v4.html` — v0.4;
- `hub-v5.html` — v0.5;
- следующая крупная версия — v0.6.

## Текущий статус по блокам

```text
Видение проекта        95%
Маршрут проекта        95%
Архитектура            93%
База данных            65%
Витрина HUB            75%
Project Passport       55%
Сравнение проектов     35%
Project View           60%
Overlay                55%
Project Moved          45%
Админка                 0%
Автоматизатор           0%
Миграция проектов       5%
```

## Важные принципы

- Ничего не удалять без отдельного решения.
- Старый `shop.html` не удалять.
- Старые версии проектов не удалять.
- Архив — это статус, а не удаление.
- Новые идеи фиксировать в документации.
- Крупные изменения делать контрольными версиями.
- Перед переносом файлов создать backup-ветку.
- Не менять старые ссылки без redirect/moved-страниц.

## Следующий рекомендуемый шаг

Сейчас самый полезный следующий шаг:

```text
Overlay v3
```

Он должен добавить в виджет:

- версию проекта;
- версию HUB;
- похожие проекты;
- связанные версии;
- мини-статистику;
- более выразительный визуальный статус.

После этого Overlay можно будет безопасно подключить сначала к одному реальному проекту, а затем постепенно расширять внедрение.
# v0.7.1-final-entry

SUNPOLE HUB is now packaged as the working catalog entry for the repository.
The public root page `index.html` points users into the HUB flow, while
`hub-current.html` remains the stable current HUB entry.

Current operating mode:

- working catalog first;
- no physical file cleanup yet;
- no automatic screenshots yet;
- no project folder moves yet;
- old links stay intact;
- deeper cleanup is deferred until canonical projects and redirects are reviewed.
