Смотреть
7 мин

Как я выбирала движок под ферму блогов. Часть 2: Hugo, Jekyll и почему Astro

Думала, что возьму готовый шаблон. Пара дней кода и можно запускать... но все пошло не по плану...

Саммари:

Maugli Content Farms - это автоматизированная ИИ-редакция для создания качественного контента в различных форматах и каналах.
  • Автоматический парсинг и скоринг контента
  • Создание контента с соблюдением брендинга
  • Контроль качества человеком
  • Автоматическая публикация

Итак, уже рассказала, что nоcode-платформы не подошли под задачи полностью самостоятельной ИИ-редакции. Значит придется пару дней посидеть с кодом — выберу готовый шаблон, доработаю под свои задачи, и можно запускать.

Спойлер: про пару дней — это было наивно.

Пришло время посмотреть в сторону serverless фреймворков.

Напомню, что цель — не «красивый блог», а заготовка под контент-ферму, которую ведет редакция ИИ с полной автоматизацией: боты пишут, человек утверждает, публикации летят сами.

Претендентов был всего 3: Astro, Hugo, Jekyll. Все они Netlify-friendly. То есть: вечно-бесплатные блоги, публикующие контент, как только новый пост в виде .md файла попадет на github из ИИ-редакции. Осталось определиться.

Критерии отбора:

  1. легкий порог входа,
  2. быстрый старт,
  3. нормальный внешний вид и необходимый функционал,
  4. рынок специалистов для дальнейшего делегирования.

Выбор очевиден — Astro

  • Быстрый вход. Я — управленец, с техническим бэкграундом, мне важно понимать код. Я пишу код в голосовом режиме. Говорю как мне надо: логику, архитектуру, стек — пишет ИИ. Без понимания и контроля ч моей стороны боты-кодеры могут навести хоть и работающий снаружи. но полный треш из костылей внутри, который в последствии будет больно масштабировать. Потому важно быстро разобраться со стеком.. С Astro за вечер разобралась. С Hugo/Jekyll так не выйдет. Даже при том условии, что когда-то оба изучала. Но на минималках.
  • Проще и дешевле делегировать код в дальнейшем. Любой фронт, знающий React врубится за час-два. Найти «джуна на поддержку» быстрее и дешевле, чем спеца по Hugo/Jekyll.
  • Гибкость без админок. ИИ-редакция пишет в Markdown, дальше всё автоматом: структуры, SEO, публикация. Нужны интерактивные блоки? — легко. В Hugo/Jekyll —чистая статика.
  • Кастомизация — простая. Компоненты, темы, типографика — всё ок, без боли.

(Техничка для зануд: Astro поддерживает MDX и «острова» — это значит, можно вставлять компоненты — любые — хоть React, хоть Vue, хоть любые другие фреймворки. И все это может быть в одном проекте. )


Честно про «ложку дёгтя»

  • Картинки. Родной компонент <Image> в Astro любит картинки, импортированные из исходников, а не из «паблика». Когда мы разделили «ферму» и «ульи» (клиентские блоги), это сломалось. Решила просто: написан свой компонент изображений — и забыли проблему.
  • Полный ребилд. При новом посте Astro пересобирает весь сайт. То есть если постов тысячи. - это не секунды. Но собирают боты, не люди, потому — ОК. Плюс размазываем нагрузку: не один монструозный блог с частотой публикаций 100 в день, а 100 блогов по 1 посту в день. Не только из-за билдов: если 1 автор будет выдавать по 100 постов в день — и у нейронок и у людей возникнут вопросы — а не боты ли это?

Спойлер: Да, боты. И тут ,. на демо-витрине Maugli, скрывать было бы глупо. Однако, для ферм и клиентских проектов — эта информация будет лишней.


Масштаб и здравый смысл

  • Сколько писать? Боты могут выдать десятки статей за час. Но читает и утверждает всё равно человек. Как минимум на этапе дообучения каждой фермы. Разделяя блоги, можно назначить каждому блогу своего Human-in-line-редактора. Идеальный ритм: 1 автор = 1 статья в день, или реже. Надо больше — добавляем авторов/блоги. Именно поэтому быстрое развертывание большого количества блогов важнейший фактор.
  • Netlify. На бесплатном тарифе ограничения по деплоям — терпимо. Для ферм берём платный — и забыли.
  • Мультиязычность. Интерфейсы уже локализованы на 8 языков (Английский, Русский, Испанский, Французский, Португальский, Китайский, Японский, Немецкий — до топ-10 самых популярных не хватает хинди и арабского + RTL ). В новом блоге при инициализации в одном месте выбираем язык — и погнали. Это подключает правильный типограф, язык блога, локализует все компоненты.
  • Контент по языкам — в разных блогах (это разные аудитории, нужен не тупой перевод, а другой автор — каждый смысл должен быть не только переведен но и адаптирован под особенности менталитета ). При этом Maugli предусматривает, что каждый блог можно линковать между собой. Но это не локализация. Это скорее, edition — как у Bloomberg. Да, работает на ботах. Но по образу и подобию сильнейших мировых редакций.

Как устроен пайплайн Maugli

Без админок и ручной рутины

  • Боты делают черновики → Человек утверждает в Telegram (если надо — отправляет на доработки или правит 2-3. слова сам, если так быстрее). Кроме того, для дообучения нейронок, есть возможность оценить полученный от ботов материал при утверждении.
  • Фичеринг: у человека-редактора — есть кнопка. Если пост хочется закрепить, при утверждении ставим соответствующую галку, Но дабы избежать длинной простыни закрепленных постов и не плодить отдельного бота под этот процесс, в витрине держим только 3 материала. Как только новый пост с отметкой “Закреплено” публикуется, он вытесняет, самый старый. Если максимум закрепления достигнут.
  • Источник правды — Airtable (удобно для правок), метаданные фермы — Supabase.
  • Публикация идёт через GitHub → Netlify по крону.
  • JSON-LD, который так любят поисковики и ИИ собран автоматически.
  • Графика к посту создается также “дизайн-командой ИИ” на постпродакшне.
  • PWA включён. Продукты и кейсы — отдельные сущности, всё лишнее можно отключить → получится блог «одного автора».

Для этих целей выиграл Астро. Но у каждого из претендентов есть свои плюсы:

Сравнение функционала Astro, Hugo и Jekyll

Что важноAstroHugoJekyll
СтартЗа вечер можно въехать и запуститьНужна насмотренность по шаблонамМедленнее, руби-окружение
Найм и поддержкаДешевле: море React-фронтовРеже встречаются спецыЕсть, но стек олдскул
МасштабированиеЛегко плодитьмного блоговМожно, но «темизация» жёстчеМожно, но смысла мало
АвтопубликацииИдеально под Git-поток и ботовТоже можно, но сетап сложнееМожно, но тормознее
МультиязыкРешаемо, локали уже естьЛучшее встроенное i18nПлагинами
Время сборкиПолный ребилд (нас не парит)Очень быстрый билдСамый медленный

Вывод: под задачи ИИ-редакции лучше всего подошел Astro. Баланс скорости запуска, стоимости поддержки и гибкости.

Для «сверхскоростных» порталов без интерактива — выиграет Hugo.

Для визиток на GitHub Pages — Jekyll.


Почему просто взять и адаптировать шаблон — не получилось (хотя очень хотелось)?

Такая попытка сначала и была. Выбрала очень простую тему Dante. Запустила. Поняла что нужны доработки. Получила вот этот тестовый вариант. Но мне надо больше функционала и лучше адаптацию под SEO:

  1. Для фермы, где агенты работают самостоятельно (после глубокой ручной настройки, разумеется) важна максимальная автоматизация. В том числе и по централизованным доработкам. Даже 2-3 блога апдейтить по отдельности — зло. А если 100+?
  2. Быстрое развертывание каждого нового блога.
  3. UX — заточен под ИИ: который и пишет, и читает . Постинг руками — удобнее где-то в другом месте.
  4. SEO и GPT-SEO. Делается автоматом. Но как часть редакции, а не часть шаблона блога. Потому если хотите Maugli-шаблон выбрать из-за этой фичи, но писать руками, то чуда не произойдет. Потому что шаблон — лишь платформа для ИИ-редакции. Но не сама редакция.
  5. А встроить в свою автоматизацию или полуавтоматизацию (например, ,банальный agent chatGPT) — легко. Для тех, кто умеет.

На выходе получился Maugli FREE BLOG. В том виде, в котором он есть сейчас.

Вы тоже можете его использовать бесплатно.

Кому зайдет Maugli FREE BLOG и кому он точно не нужен

Maugli разочарует тех, кто:

  • ожидает писать в Maugli, как в Medium или в Дзен из коробки, только на своем домене и с авто-SEO.

Кто оценит Maugli:

  • автоматизаторы, лоу-кодеры, нейро-энтузиасты, которые хотят свой блог с минимальной болью
  • создатели сетки афилиатных блогов
  • агенства, которым надо разворачивать и автоматизировать клиентские блоги пачками
  • SEO с длиннохвостыми ключевиками

Да, базовая версия — с лейблами Maugli. Но есть WhiteLabel PRO. Без подписки — единоразовая оплата. Снятие лейбла — навсегда. Возможно, это ограниченное предложение…пока не решила.


Факт на десерт: шаблон запилен полностью в голосовом режиме. Команды выполняли KODEX и Copilot. Я лишь подсказывала им решения, и следила , чтобы они не факапили, раздувая архитектурно “как им удобнее”.

В заключении немного жалоб на собственную наивность:

Ожидания: “Возьму готовый шаблон — пара дней и запускаю платформу.”

Реальность: Да, разобраться и адаптировать Dante - заняло пару дней. После чего довольная ушла в упаковку. Но, когда пришло время запускать блог Maugli — поняла, что:

  1. без масштабирования — будет больно на каждом новом блоге
  2. тема слишком скромна и скудна. Это. годно для “ИИ-персон, ведущих личный блог”, но не для брендов и бизнеса
  3. Итого почти месяц доработок. Из которых 2 недели выкинуты на глобальный факап. Но как без них? О факапе, как-нибкдь в другой раз.

FAQ:

Система включает возможность человеческого контроля на этапе обучения, который можно отключить после достижения 100% качества без редактирования.
Платформа создает статьи, посты для социальных сетей, телеграм-каналы и фирменную графику в едином стиле.
Да, система создает контент в соответствии с заданной тональностью и может писать от лица конкретного персонажа.