Генераторы статических блогов ∞
Я давно присматриваюсь к блог-движкам, которые генерируют статический контент. До старта в 2006 я пробовал thingamablog, при переезде на pyobject.ru рассматривал PyBlosxom. Теперь я снова ищу альтернативу «тяжелому» Byteflow, и хорошо что выбор есть.
Я нашел 17 генераторов. Конечно, большинство из них пригодятся разве что создателю, но некоторые «очень даже ничего». 5 блог-движков попало в «финалисты»: Cyrax, Golbarg, Growl, Jekyll, Lanyon.
Для моих целей, наверное, лучше всего подойдет Cyrax, и дело не в том, что его автор — Александр Соловьев :)
Требования к движку у меня простые: быть не назойливым и давать возможность вмешиваться в процесс генерации сайта не форкая сам генератор.
Для пятерки «финалистов» я сделал примерно одинаковый пример, так чтобы немного почувствовать инструменты в живую.
Jekyll
Jekyll — это то, что вдохновляет почти всех авторов, так что я не смог пройти мимо.
Нормальный инструмент. Немного не понравились шаблоны внутри (YAML-заголовок, некоторые нюансы Liquid). У Jekyll громадное коммунити и тонны примеров использования. Этот движок я рассматривал как запасной вариант.
Golbarg
Golbarg сильно похож на Jekyll по организации «исходников» блога. Шаблоны организованы хорошо, но адаптация «под себя» возможна только с форканием Golbarg, точки расширения не предусмотрены. Не понравилось, что кастомные страницы (т.е. не блог-посты, а отдельные страницы) не допускают несколько уровней вложенности. Также отсутствует встроенный веб-сервер (либо привязки к внешнему) для тестирования сгенерированного сайта, приходится использовать что-то своё (я, к примеру, использовал twisted.web2). Пример использования — блог автора.
Growl
Growl очень сырой. Много хардкода, очень базовый функционал, всё (и очень много) нужно дописывать руками. Пример использования — блог автора.
Lanyon
Lanyon весьма добротный инструмент. Мне не понравились вездесущие YAML-заголовки в шаблонах, но всё остальное не вызывало неудобств. Точек расширения нет, предусмотрена только кастомная обработка урлов, к слову, весьма удачная. Пример не очень работающий, потому что автор закрыл свой блог, тем не менее, что-то найти в примере можно.
Cyrax
Cyrax оставил смешанное впечатление. Есть удачные моменты и хороший код, а в других местах — непонятный хардкод и странные решения. Создалось впечатление, что «ядро» было сделано вдумчиво, а сверху быстренько дописан «как получится» недостающий функционал. Есть некоторая многословность в описании постов, но описание последовательно и не вызывает дискомфорт. Меня подкупила возможность расширения, причем не хаками, а вполне штатно. Пример использование есть в дистрибутиве.
Массовка
Список всех претендентов:
Вне зачёта еще посмотрел вики, которые можно использовать в блог-режиме: