Назад к портфолио
Fullstack веб-приложения

NovaIndex — SEO-генератор статей

Задача

Создать профессиональный SaaS-инструмент для автоматической генерации SEO-оптимизированных статей с помощью LLM.

Проблема

SEO-специалист тратит 3–5 часов на одну статью: анализ конкурентов, бриф, написание, правки, проверка ключей, форматирование, загрузка в CMS. При плане в 20–30 статей в месяц это становится физически неподъёмным.

💡

Инсайт

Узкое место не в написании текста — с этим LLM справляется. Узкое место в том, что каждый шаг процесса требует отдельного инструмента, и специалист тратит половину времени на переключение между ними. Нужен единый конвейер от ключа до публикации.

Вклад

Полное ведение проекта: идея, архитектура, frontend, backend, интеграция LLM, деплой

Результат

Рабочий SaaS с 8-шаговым генератором, WYSIWYG-редактором Notion-style, анализом конкурентов и прямой публикацией в WordPress

React TypeScript Express 5 PostgreSQL Prisma Zustand Tiptap LLM API Docker

Работая SEO-специалистом в Яндекс Практикуме, я видел один и тот же паттерн: производство контента — это конвейер, в котором каждый шаг занят рутиной. Специалист-эксперт занимается копипастом между вкладками браузера.

Когда появились нормальные LLM API, я понял: проблема не в том, что нет инструментов. Проблема в том, что инструменты существуют изолированно. Я решил это исправить.

Анализ: где теряется время

Я разбил типичный процесс создания SEO-статьи на шаги и замерил время:

ШагСредние затраты
Сбор конкурентов, анализ H1–H330–45 мин
Составление брифа и структуры30–40 мин
Написание текста60–90 мин
Редактура и правки30–45 мин
Проверка ключей и вхождений15–20 мин
Поиск/генерация изображений20–30 мин
Загрузка и форматирование в CMS20–30 мин

Итого: 3–5 часов на одну статью. Из них реальная экспертная работа — минут 30.

Инсайт: проблема не в тексте, а в конвейере

LLM умеет писать текст. Но специалист всё равно тратит часы — потому что каждый шаг требует нового инструмента. Мой ответ: 8-шаговый wizard, который проводит через весь процесс, не выходя из одного окна.

Решение: единый конвейер от ключа до публикации

Ключевые слова
  → Анализ конкурентов (авто-парсинг H1–H3)
    → Формирование брифа
      → Генерация текста (выбор LLM)
        → Редактирование в Tiptap
          → Валидация ключевых вхождений
            → AI-изображения
              → Экспорт / публикация в WordPress

Ключевые технические решения

Мультимодельность. Я не стал завязываться на один LLM. Пользователь выбирает между Yandex GPT, OpenAI, Claude и OpenRouter — прямо в интерфейсе. Это критично для российского рынка, где доступность API нестабильна.

Умный переразбор без повторных запросов. Если специалист хочет изменить промпт или структуру — система не отправляет статью заново, а переиспользует уже полученный контент. Экономит и деньги, и время.

WYSIWYG-редактор на Tiptap (ProseMirror). Не просто textarea — полноценный редактор в стилистике Notion с inline SEO-валидацией прямо в тексте.

Прямая публикация в WordPress. AES-256-GCM шифрование хранимых паролей от CMS клиентов. Статья уходит на сайт одной кнопкой.

Архитектура и безопасность

  • Frontend: React 18 + Zustand (state) + shadcn/ui
  • Backend: Express 5 с многослойной архитектурой (Routing → Controllers → Services → Models) + Prisma ORM
  • Безопасность: JWT с refresh-токенами + HttpOnly cookies, CSRF Double Submit Cookie, AES-256-GCM для хранения паролей клиентов
  • Инфраструктура: Docker (nginx + SSL + backend + frontend + PostgreSQL), деплой за 15 минут

Результат

Инструмент сократил время производства одной статьи с 3–5 часов до 20–40 минут. Разница — не в качестве текста, а в устранении переключений и рутины.

Дополнительно: поддержка массовой обработки через DOCX — можно загрузить список из 30 тем и получить 30 статей в ZIP-архиве.

Ключевой урок: автоматизация работает, когда автоматизируешь весь процесс, а не отдельный шаг.

Вернуться к списку проектов