AiНАЛИТИК Поддержка

Техническая документация

Версия: 0,2

Проект построен на FastAPI с серверным рендерингом шаблонов Jinja2 и статическим фронтендом на vanilla JS.

0. Что изменилось в версии 0,2

  • Добавлен парольный вход при открытии сервиса (модальное окно + затемнение экрана, повторный ввод при обновлении страницы).
  • Обновлена шапка навигации: «Структура по топ-10», «Тестовые функции», «Документация (ver. 0,2)».
  • Для top-10/light усилена логика формирования структуры и предпросмотра в отчёте.
  • Экспорт структуры в Google Sheets работает в строгом формате через структурированные массивы листов.
  • Добавлена отдельная пользовательская и техническая документация в интерфейсе.

1. Архитектура

  • /app/main.py — HTTP-эндпоинты и оркестрация пайплайнов.
  • /app/llm.py — клиент LLM API.
  • /app/crawler.py — сбор скриншотов и текста страниц.
  • /templates/*.html — страницы интерфейса.
  • /static/*.js, /static/styles.css — логика и стили UI.

2. Основные страницы и маршруты

  • GET / — Аудит сайта.
  • GET /competitors — Анализ конкурентов.
  • GET /top10-structure — Структура по конкурентам.
  • GET /top10-structure-light — Структура по конкурентам (Light).
  • GET /docs/user — Пользовательская документация.
  • GET /docs/tech — Техническая документация.

3. Ключевые API-эндпоинты

  • POST /analyze — аудит сайта.
  • POST /analyze-competitors — отчёт по конкурентам.
  • POST /analyze-top10-structure — построение структуры по конкурентам.
  • POST /top10-urls — получение топ-10 URL из KeySo.
  • POST /export/google-sheets — экспорт отчётов в Google Sheets.
  • GET /build-info — служебная информация о версии сборки и ключевых парсерах.

4. Данные и артефакты

  • /data/uploads — загруженные файлы.
  • /data/screenshots — скриншоты страниц.
  • /data/*_report_*.json — сохранённые результаты запусков.

5. Интеграции

  • OpenAI API — генерация аналитических блоков отчёта.
  • Yandex Metrika API — получение отчётов по счётчику.
  • KeySo API — сбор топ-URL по запросам.
  • Google Apps Script Webhook — экспорт в Google Sheets.

6. Запуск локально

  1. Заполнить .env (API-ключи и webhook URL).
  2. Запустить контейнеры: docker compose up -d --build.
  3. Открыть UI: http://127.0.0.1:8011.