Останнім часом відбувся величезний перехід до статичних веб-сайтів у сфері веб-розробки. Статичні сайти легше підтримувати (немає баз даних, сценаріїв на стороні сервера!) І є більш безпечними, зважаючи на те, що єдине, що обслуговується пристроями користувачів - це файли HTML, CSS і Javascript. Для того, щоб деякі типи веб-сайтів, таких як блоги та веб-сайти з документацією, стали статичними, просто написання коду у файлах HTML стає напруженим. Це також стає важким для підтримки сайтів з великим вмістом, особливо коли деякі маленькі функції (наприклад, дизайн) повинні бути змінені.
Тут приходять статичні генератори сайтів. Статичні генератори сайтів в основному перетворюють (або компілюють) купу різних файлів ресурсів на один веб-сайт. Це означає, що вміст може зберігатися окремо від коду макета, а активи сайту, такі як зображення, можуть бути повністю відокремлені. Існує багато статичних генераторів сайтів, сотні навіть. Ось список 10 кращих статичних генераторів сайтів разом з їхніми відгуками.
Статичні генератори сайтів
1. Джекілл
Одним словом: король генераторів статичних сайтів . Jekyll є найбільш використовуваним статичним генератором там, з найбільшою документацією, найбільшою спільнотою, і найкращою підтримкою. Навіть GitHub пропонує вбудовану підтримку Jekyll на своєму сервісі GitHub Pages. Jekyll пишається тим, що знає про блог. Створення статичного блогу на Jekyll дійсно легко. Це вимагає лише знання базової веб-розробки. Це дійсно світить, тому що його легкі можливості налаштування для початківців, в той же час мають дійсно потужні функції для тих, хто має знання, щоб використовувати їх.
Jekyll дозволяє створювати і використовувати різні плагіни, теги і навіть створювати власні конвертери для будь-якої мови розмітки, яку ви хочете використовувати з Jekyll. Мова розмітки за замовчуванням для Jekyll - подібна до більшості інших - це Markdown. У Jekyll є плагіни для компіляції Less, Stylus, генерування хмари тегів, сторінки користувача для блогів і багато іншого.
Jekyll базується на Liquid Template Engine від Shopify. Вона повністю працює на Ruby, тому вона легко встановлюється разом з залежностями, використовуючи rvm, або використовуючи bundler. Jekyll також має прості варіанти міграції, якщо ви хочете перейти з WordPress, Blogger або будь-якого іншого блогу. Він відбиває будь-який інший статичний генератор сайту там, руки вниз, з точки зору розміру користувача. Вона перебуває в стані активної розробки (остання зміна GitHub репо напередодні дня, під час написання).
Щоб встановити Jekyll, просто введіть цю команду в Ruby: gem install jekyll
2. Пелікан
Pelican - це статичний генератор сайтів, побудований на Python. Вона містить багатомовне розміщення контенту, підсвічування коду (синтаксису), а також легке генерування каналів RSS і Atom. У Pelican є хороший вибір плагінів, всі з яких розміщені на центральному сховищі GitHub. За замовчуванням він підтримує 3 формати документів: Markdown, reStructuredText і Ascii Doc.
Пелікан досить унікальний, оскільки він побудований на Python. Він підтримує потужний Jinja Template Engine, який базується на Python, що дозволяє легко створювати красиві теми та шаблони для Pelican. З точки зору міграційної підтримки, Pelican пропонує підтримку для WordPress та Tumblr. Замість звичайних файлів YAML для конфігурації, Pelican використовує файл .py з ім'ям pelicanconf.py для налаштування та налаштування.
Найпростіший спосіб встановити пелікан - за допомогою pip: pip install pelican
3. Посередник
Middleman - це статичний генератор сайтів, що працює на Ruby, який слідує легкому підходу до створення статичних сайтів. Вона має потужні функції для підтримки статичних блогів, як легка генерація тегів, швидкі команди для переліку категоризованих статей і нумерації сторінок. Middleman не надає жодної підтримки міграції, тому, якщо ви хочете зробити існуючий блог статичним, Middleman не може бути найкращою ідеєю на даний момент.
Middleman пропонує підтримку для більшості сучасних інструментів веб-розробки, таких як HAML, Coffeescript, Sass та інші. За замовчуванням двигун шаблонів eRb, але дозволяє перемикатися на власний движок шаблонів за вашим вибором. Всі двигуни з підтримкою Tilt (повний список можна знайти тут) працюють на Middleman. Він спочатку підтримує 2 формати конфігурації - YAML, JSON. Фронтматеріали для вашого вмісту також повинні бути YAML або JSON залежно від формату конфігурації, який ви використовуєте.
Встановіть Middleman за допомогою Ruby з: gem install middleman
4. Металсміт
Металсміт пишається тим, що є статичним генератором сайтів. Це означає, що вся логіка Metalsmith обробляється плагінами. Будь-яка потрібна функція, просто додайте необхідні плагіни. Саме кількість плагінів, які пропонує Metalsmith, б'є майже кожного конкурента (можливо, заборонивши Jekyll і Docpad). Це означає, що Metalsmith може використовуватися як більше, ніж просто статичний генератор сайту.
На їх власні слова: «Оскільки все це плагін, бібліотека ядра - це просто абстракція для керування каталогом файлів». Що це, нарешті, додає до, є те, що ви використовуєте Metalsmith так само легко, як проект scaffolder, ebook генератор, інструмент побудови, виготовлення технічної документації, і більше (ці деякі з прикладів, представлених на сайті Metalsmith).
Металсміт заснований на Node.js, і його можна встановити за допомогою менеджера пакетів вузлів: $ npm install metalsmith
Homepage
5. Арфа
Арфа має вбудовану попередню обробку для Jade, Markdown, LESS, Sass, Coffeescript, EjS і Stylus без додаткової конфігурації. Він також дозволяє використовувати макети / часткову парадигму з Jade і EjS, які потребують спеціальних плагінів на інших статичних генераторах сайтів.
Арфа побудована на Node.Js і може працювати пліч-о-пліч з платформою Harp, яка дозволяє створювати веб-сторінки з папки Dropbox. Арфа також може компілювати сторінки для використання на сторінках GitHub, PhoneGap і Heroku.
Щоб встановити арфа, використовуйте npm і запустіть: sudo npm install -g harp
Домашня сторінка
6. Octopress
Технічно Octopress є модифікованою вилкою Jekyll, але завдяки своїй величезній популярності, вона була включена в цей список. Octopress - це в основному Jekyll для хакерів (і розробників рейок). Налаштування Octopress стає простим, особливо якщо ви створюєте блог, оскільки Octopress за замовчуванням містить багато плагінів, які потрібно запустити в блозі на Jekyll.
У розділі налаштування код Octopress полегшує користувачам модифікацію коду та записування власного коду. При цьому багато плагінів для Octopress сумісні з Jekyll (і навпаки).
Щоб встановити Octopress,
- Клонування репо GitHub
git clone git://github.com/imathis/octopress.git octopress
cd octopress
- Встановіть залежності
gem install bundler
rbenv rehash
# Якщо ви використовуєте rbenv, ви можете повторно виконати команду bundlebundle install
- Встановіть тему Octopress за умовчанням
rake install
7. Docpad
Docpad - динамічний статичний генератор сайтів. Він розширює можливості звичайних статичних генераторів сайтів, з функціями, такими як запит до бази даних через механізм запитів, імпорт сторінок із зовнішніх баз даних і повторне відображення веб-сторінки на кожен запит.
Docpad має вбудовану підтримку попередніх процесорів, таких як Coffeescript, Stylus і LESS, і використовує плагіни для підтримки двигунів шаблонів, попередніх процесорів і мов розмітки, так що ви можете вибрати потрібні комбінації за допомогою необхідного плагіна. Docpad також підтримує імпорт сторінок із зовнішніх джерел, таких як Tumblr, GitHub і Dropbox через плагіни.
Docpad є багатофункціональною платформою з великою кількістю плагінів і великою документацією. Він побудований на і використовує Node.js для взаємодії з сервером.
Просто встановіть Docpad за допомогою npm: npm install -g npm; npm install -g [email protected]
npm install -g npm; npm install -g [email protected]
Домашня сторінка
8. Hexo
Hexo це легка статична рамка блогу, яка пишається своєю швидкою швидкістю генерації сайту. Hexo відмінно підходить для блогерів з великою кількістю контенту, які хочуть простого статичного генератора сайтів. Він пропонує легкі варіанти міграції з інших блогів платформ, таких як WordPress, Joomla, Jekyll, Octopress і RSS. Один з великих речей про Hexo полягає в тому, що ви можете скористатися більшістю плагінів, створених для Octopress (і розширенням плагінів для Jekyll з дуже незначними змінами).
Hexo підтримує Markdown, YAML для переднього питання і конфігурації. Тримаючись за свою швидку природу Hexo дозволяє розгортати на таких сайтах, як GitHub, Heroku і Rsync за допомогою однієї команди.
Hexo можна встановити за допомогою Node.js: npm install hexo-cli -g
9. Гюго
Hugo - це генератор статичних сайтів загального призначення з хорошими універсальними функціями, такими як шаблони та часткові підтримка, нумерація сторінок і таксономія, яка в основному є унікальною системою категоризації контенту, за якою слід Hugo. Це означає, що ви можете легко класифікувати повідомлення на основі не тільки тегів, але й будь-яким іншим способом, яким ви бажаєте, наприклад, категорій або рядків безпосередньо з фронтматери. Hugo підтримує три типи файлів даних - YAML, JSON і TOML, і дозволяє вирішити, який з них найбільш зручний для вас.
Замість плагінів, Hugo використовує "шорткоди", які дозволяють використовувати багатий контент у вашому Markdown. Щоб дізнатися, як це працює, прочитайте цю статтю. Hugo написаний на мові програмування Go, і він пропонує окремі інсталяційні файли для різних платформ на своїй сторінці GitHub. Щоб точно знати, як ви можете встановити Hugo для використання, прочитайте інструкції з установки для Hugo.
Якщо ви використовуєте Homebrew, то Hugo і всі залежності можна встановити за допомогою: brew install hugo
10. Бранч
Бранч схиляється до веб-додатків HTML5, а не до блогів і веб-сайтів, але він все ще є дуже простим у використанні, швидким статичним генератором сайтів. Він не тільки збирає весь ваш код і скрипти, але також може зменшувати (зменшувати) код і стискати зображення автоматично. Бранч має цілий ряд плагінів, які можна використовувати, щоб налаштувати його відповідно до ваших потреб. Повний список плагінів Brunch можна знайти тут.
Бранч пропонує «скелети», які в основному є набором для запуску вашого веб-сайту (або веб-додатки). Він пропонує одну з найшвидших швидкостей компіляції, просто тому, що Brunch кешує всі незмінені частини вашого проекту і компілює тільки ті файли, які переглядаються. Бранч побудований на Node.js і може бути встановлений за допомогою npm: npm install -g brunch
Чи є пропозиції щодо цієї статті? Залиште це в коментарях!