Статьи

6 Node.js Генераторы статических сайтов

Поскольку Node.js продолжает расти с точки зрения популярности и в качестве жизнеспособного решения для небольших и больших веб-приложений, многие талантливые разработчики создают системы на основе Node, чтобы заменить некоторые из старых охранных программ, которые многие из нас знают и любят.

В контексте систем управления контентом (CMS), без сомнения, самым популярным является WordPress. Это надежная и надежная система с очень активным сообществом. Это позволяет людям с практически нулевыми техническими навыками создавать любые веб-сайты, включая, помимо прочего, блоги. Среди создателей статических сайтов, системы на основе Jekyll и Jekyll получили одобрение разработчиков, ищущих легковесное решение для создания блогов или информационных сайтов. В этой статье я дам вам обзор 6 генераторов статического сайта Node.js для всех любителей JavaScript.

Wintersmith

wintersmith

Wintersmith утверждает, что является гибким, минималистичным, многоплатформенным генератором статических сайтов, созданным на основе Node.js. Конечно, минималистичный это ключевое слово! Wintersmith не подходит для начинающих, но он отлично подходит для средних и продвинутых разработчиков, которые хотят начать работать без особых хлопот. Подход Винтерсмит не единственное, что минимально. Он был написан на CoffeeScript и поставляется с Jade и Markdown, готовыми к работе.

Этот генератор статического сайта размещает свои документы API на веб-сайте, но использует GitHub для размещения вики. Информация простая, но скудная. Тем не менее, прилично активный тег StackOverflow и IRC-канал (#wintersmith) означают, что помощь не слишком далеко.

собирать

собирать

Assemble — это мощный инструмент, который интегрирует Grunt и Yeoman в свой рабочий процесс. Как и Punch и DocPad, обсуждаемые далее в этой статье, Assemble пытается привлечь дизайнеров и разработчиков на одной странице. Например, Assemble поставляется в комплекте с Handlebars , одной из наиболее широко используемых и удобных для начинающих шаблонизаторов.

Несмотря на то, что Assemble поставляется с системой плагинов, он в первую очередь предназначен для расширения базовой функциональности Assemble и не обязательно для добавления интерфейсных сред, плагинов jQuery или других библиотек JavaScript, которые вы, возможно, захотите использовать.

по металлу

по металлу

Metalsmith сразу привлекла мое внимание не только благодаря своему красивому и минималистичному дизайну, но и благодаря следующему слогану: чрезвычайно простой подключаемый генератор статического сайта. Далее будет дано объяснение, что вся логика в Metalsmith обрабатывается плагинами. Вы просто связываете их вместе. Это делает Metalsmith самой универсальной из всех систем, представленных здесь.

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

Hexo

hexo

Из всех генераторов статических сайтов Node.js, перечисленных в этой статье, Hexo является наиболее популярным на GitHub. Документация Hexo проста, красива и содержит раздел комментариев внизу каждой страницы. Кроме того, на GitHub вы можете найти множество минимальных тем, многие из которых являются форками или производными тем Ghost .

Hexo в значительной степени является потомком Ghost, уделяя особое внимание удобству использования и минимализму. Он также пытается заставить вас работать как можно быстрее. Я считаю, что это делает Hexo наиболее удобной для начинающих / дизайнеров системой для создания легких блогов.

перфоратор

перфоратор

Punch — это один из двух генераторов статических сайтов на основе Node.js в этой статье, который, как утверждают, прост как для дизайнеров, так и для разработчиков. Punch легко настроить, но он дает вам немного больше, чем пустая страница, когда вы начинаете работать с ним. Доступна базовая начальная тема, но остальное зависит от вас.

В отличие от некоторых других статических сайтов, Punch не предлагает собственную систему плагинов. Он использует npm для установки альтернативных препроцессоров CSS, библиотек JavaScript и так далее.

DocPad

DocPad

Даже при беглом взгляде на сайт DocPad становится ясно, что DocPad — это амбициозный проект. Если вы искали точечную иллюстрацию того, что отличает DocPad от Jekyll, вам не нужно заглядывать слишком далеко. Внизу вводной страницы DocPad вы можете найти сравнительную таблицу, показывающую, что может предложить каждая система. Эти критерии, конечно, основаны на том, что DocPad считает необходимым для полнофункциональной CMS.

Документация DocPad является обширной и исчерпывающей; так должно быть, чтобы учесть множество функций, предоставляемых системой. Хотя DocPad хорошо документирован, я бы не сказал, что он отлично подходит для начинающих. Исключение таких терминов, как абстракция , может отвлечь новичка или дизайнера, который практически не имеет опыта программирования.

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

Но, Spider , новый язык компиляции в JavaScript кажется довольно интересным. Настолько, что вы можете захотеть использовать его в своем следующем домашнем проекте. В таком случае DocPad предоставляет инструкции по расширению платформы , включая написание пользовательских плагинов и начало работы со скелетными проектами.

Вывод

Когда дело доходит до интерфейсных инструментов, библиотек и программного обеспечения в целом, вариантов не бывает никогда. Вы ищете максимальный контроль? Или возможно подключи и играй? Каждый из генераторов статических сайтов Node.js, перечисленных в этой статье, найдет что-то для себя!