Платформа аудита сайтов
Аудит URL — безопасность, SEO, маркетинг, продажи, право — движок правил.
Dev-storyЗадача
У нас было шесть почти одинаковых аудит-репозиториев (platform, audit, marketing, sales, security, law), ~90% одного кода в разной обёртке, а оценки аудита, меняющиеся от прогона к прогону, не заслуживают доверия.
Что делали
Одно приложение прогоняет все пять типов аудита по URL через детерминированный движок правил, поэтому оценки воспроизводимы; опциональный локальный AI-слой превращает сырые находки в готовые для клиента резюме, фиксы и планы действий, не трогая объективные данные.
Результат
Шесть репозиториев схлопнулись в один, URL получает повторяемую оценку и читаемый отчёт, а AI добавляет глубину изложения, не меняя цифр.
Dev-story статья
Платформа аудита сайтов: как создавался проект
Было пять почти одинаковых кодовых баз аудита — безопасность, SEO, маркетинг, продажи, право — каждая примерно на 90% то же приложение, лишь перекрашенное под свою область, и каждая расходилась своей дорогой. Под этим лежал более сложный вопрос — доверие: оценка аудита, которая меняется от запуска к запуску или которую тихо выдумывает LLM, для клиента ничего не стоит. Поэтому работа была сразу двумя решениями — свернуть пять приложений в одно и сделать оценку такой, которую можно отстоять до последнего байта.
Разделы
05
Модули
05
Стек
Vue 3 + webedge-db
Почему появился проект
У нас было шесть почти одинаковых аудит-репозиториев (platform, audit, marketing, sales, security, law), ~90% одного кода в разной обёртке, а оценки аудита, меняющиеся от прогона к прогону, не заслуживают доверия.
Было пять почти одинаковых кодовых баз аудита — безопасность, SEO, маркетинг, продажи, право — каждая примерно на 90% то же приложение, лишь перекрашенное под свою область, и каждая расходилась своей дорогой. Под этим лежал более сложный вопрос — доверие: оценка аудита, которая меняется от запуска к запуску или которую тихо выдумывает LLM, для клиента ничего не стоит. Поэтому работа была сразу двумя решениями — свернуть пять приложений в одно и сделать оценку такой, которую можно отстоять до последнего байта.
Что было создано
Одно приложение прогоняет все пять типов аудита по URL через детерминированный движок правил, поэтому оценки воспроизводимы; опциональный локальный AI-слой превращает сырые находки в готовые для клиента резюме, фиксы и планы действий, не трогая объективные данные.
Одно развёртывание, прогоняющее все пять типов аудита по URL через общий детерминированный движок: сборщики собирают объективные факты, чек-лист взвешенных правил переводит каждый факт в pass/warn/fail, а оценки по категориям и буквенный балл A+…F для одного и того же входа каждый раз выходят одинаковыми. Каждая область теперь — это модуль аудита внутри движка, а не отдельный репозиторий. Локальный LLM с открытыми весами может запуститься после и обогатить резюме и планы действий, но ему разрешено трогать только формулировки — никогда оценку.
Основные модули и путь пользователя
Детерминированный движок правил: сборщики на основе fetch (заголовки, редиректы, куки, robots/sitemap/llms.txt, доступ ИИ-краулеров, HTML meta/H1/JSON-LD) питают взвешенные правила по категориям и фиксированное сопоставление балла, так что один и тот же URL всегда даёт одну и ту же оценку.
Подключаемые модули аудита — безопасность, SEO/GEO, маркетинг, продажи, право — каждый небольшой контракт AuditModule (правила + опциональные панели), регистрируемый в одном месте; добавление области — это новый файл плюс запись весов, а сборщики, подсчёт, история и PDF общие.
Реактивный бэкенд на webedge-db: движок работает как запланированное Node-действие, патчащее документ анализа, а Vue SPA подписан на него — статус, логи и результат приходят вживую без SSE и без опроса.
Опциональный слой обогащения локальным ИИ, ограниченный только нарративными полями (резюме для руководства, формулировки исправлений, быстрые победы, план на 30/60/90 дней); если модель не настроена или недоступна, аудит всё равно завершается на детерминированной основе.
Осознанный разворот продукта: вырезаны платные кредиты, оплата и интерфейс 'ИИ выполняет проверки / выбери модель', заменённые бесплатным и безлимитным детерминированным сервисом и входом через email-OTP без пароля.
Архитектура и технологические решения
Сделано на Vue 3, webedge-db, Rules engine.
Фронтенд на Vue 3 + Vite + Pinia общается с нашим реактивным бэкендом (webedge-db) через единый клиент; всё приложение — интерфейс и бэкенд-функции — живёт в одном дереве frontend/, развёрнуто на своём сервере как статический SPA плюс бэкенд-развёртывание.
Результат и выводы
Шесть репозиториев схлопнулись в один, URL получает повторяемую оценку и читаемый отчёт, а AI добавляет глубину изложения, не меняя цифр.
Пять пересекающихся репозиториев стали одним поддерживаемым приложением с воспроизводимыми, отстаиваемыми оценками по всем пяти областям, а слой локального ИИ строго дополняющий — он углубляет нарратив, ни разу не сдвигая цифру, на которую опирается клиент.
Связанные статьи
Читать дальше
Связанные истории проектов
Эти проекты близки по техническим или продуктовым решениям и показывают, как тот же принцип работает в другом контексте.
Dev-storyCMS
Динамический headless-CMS на webedge-db — типы контента, медиа, роли и публичный read-API, питающий наши сайты и статьи.
Dev-storyПлатформа календарных бронирований
Бронирование на Vue 3 — слоты, записи, письма и Meet-видеозвонки в один клик.
Dev-storyFableVita
FableVita — AI-фитнес-тренер с лигами, квестами и защищённой от фрода экономикой наград.
Есть похожая идея?
Обсудить проект