Архітектура прототипу

ШАБЛОН + СТРУКТУРОВАНА БД + AI + ГЕОГРАФІЯ + БРЕНД + PRODUCT/OFFER = мільйони автоматично сформованих сторінок.

Клікабельні сценарії

A · Потреба → лінійка → товар → продавець

B · Бренд → країни → продавці

C · Один Product → багато Offer

D · Оголошення з AI-чернеткою

E · Товар: дубль → Offer

F · Сайт компанії

G · Виставковий стенд

H · Імпорт зі старої БД

Універсальні шаблони (по одному файлу на тип)

  • Лінійка: /$country/$city/$line — будь-яка комбінація країни, міста й лінійки
  • Товар: /product/$slug — Product + список Offer + геозріз
  • Оголошення: /listing/$slug
  • Продавець: /seller/$slug
  • Бренд: /brand/$slug
  • Виставковий стенд: /stand/$slug
  • Мінісайт компанії: /site/$slug
  • Картка результату та TOP-1 банер: спільні компоненти для всіх сторінок

Модель даних (mock = майбутня схема)

Country → Region → City
Line → Category
Brand → Product → Offer (seller_id, country_id, city_id, price)
Seller → Website, ExhibitionStand, Review, Rating
Listing (seller_id, line_id, category_id, country_id, city_id)
Media, Translation(entity, field, locale), ImportSource(source, source_id, confidence)

Одна пропозиція зберігається один раз і показується на сторінці товару, бренду, міста, країни, лінійки, у профілі продавця та в AI-пошуку через зв'язки, а не копії.

Як підключити стару базу

  1. 1. Увімкнути backend і створити нову нормалізовану схему за моделлю вище.
  2. 2. Підключити стару базу тільки для читання як окреме джерело (ImportSource).
  3. 3. Запустити конвеєр READ → ANALYZE → MAP → VALIDATE → IMPORT зі сторінки «Імпорт БД».
  4. 4. Замінити селектори у src/data/db.ts на серверні запити — шаблони й компоненти не змінюються.

Готовність до масштабування

Країни й міста додаються рядками в базі, а не кодом. Переклади зберігаються в окремій сутності Translation (uk, en, de, fr, it) — основні сутності не дублюються. SEO-поля (title, description, canonical, H1, breadcrumbs, Open Graph, JSON-LD Product/Offer/LocalBusiness/Review/BreadcrumbList) формуються шаблоном для кожної згенерованої сторінки.