Поиск
Карта сайта, канонические адреса и разметка.
- Влияет
- Как быстро находят новые страницы.
- Настройка
- Блок
seoв site.yaml.
Справочник
У каждой секции страницы есть форма: обычный текст, список, шаги, карточки, таблица и другие. Форму не выбирают в настройках. HERON смотрит, как написана секция, и сообщает теме её форму, а тема рисует каждую форму своим модулем.
Ниже все формы, которые рисует тема этого сайта. У каждой видно, как её писать, живой результат, HTML, который выдаёт тема, и CSS за ним. Переключите цветные точки — тот же блок покажется в другой палитре.
Секция начинается с заголовка и якоря: ## Заголовок {#якорь}. Ей принадлежит всё до следующего заголовка того же уровня. HERON смотрит, что внутри, и проверяет правила по порядку, срабатывает первое подходящее:
ключ | значение без разделителя — факты;###, в каждой список: ровно две — две колонки, три и больше — карточки;### без списков — вопросы;> без списка — врезка;Класс в якоре сильнее правил: {#tips .list}, {#guide .prose}, {#plans .checklist}. Если класс не подходит к содержимому, секция показывается текстом, а отчёт сборки об этом пишет. Полные правила — в контракте.
Форма · prose
Обычные абзацы, подзаголовки, ссылки и код. Подходит для объяснений, которые читают сверху вниз. Длинная текстовая секция сохраняет подзаголовки ###, если добавить класс .prose.
Сайт на HERON — это папка текстовых файлов. Её можно прочитать, скопировать и хранить в git, а на сервере работает только nginx.
Страницы в content/, фото в media/, настройки в site.yaml.
## Почему достаточно папки {#why .prose}
Сайт на HERON — это папка текстовых файлов. Её можно **прочитать**,
скопировать и хранить в git, а на сервере работает только nginx.
### Что внутри
Страницы в `content/`, фото в `media/`, настройки в `site.yaml`.
Тема получает всю секцию как HTML (section.html) и рисует её модулем modules/prose.html.
Форма · list
Маркированный список. Если пункт начинается с жирного термина с точкой, HERON делит его на термин и пояснение, и тема может нарисовать термин отдельно.
## Что вы получите с первой сборки {#first-build}
- **Карта сайта.** Все страницы с датой последней правки.
- **llms.txt.** Короткая карта сайта для нейросетей.
- **Настоящая 404.** На каждом языке, с правильным кодом ответа.
Тема получает items — список пар term, text, links — и рисует их модулем modules/list.html.
Форма · steps
Нумерованный список. Каждый пункт — шаг с заголовком, текстом и ссылками. Метка заглавными буквами в квадратных скобках в начале пункта становится ярлыком шага.
heron new my-site -y делает папку с демо-страницами.## От папки до живого сайта {#path}
1. **Создайте.** `heron new my-site -y` делает папку с демо-страницами.
2. **Заполните.** Поменяйте тексты, добавьте фото, скопируйте страницу для новой.
3. **[КОГДА ГОТОВО] Опубликуйте.** Соберите файлы или образ и опубликуйте выбранным способом.
Тема получает список шагов n, tag, title, text, links и рисует его модулем modules/steps.html.
Форма · checklist
Три и больше групп ###, в каждой список. Каждая группа становится карточкой: первый абзац виден сразу, список и всё после него открываются по клику. Если первый абзац начинается с «Доступно.», «Скоро.» или «Платно.», у карточки появляется метка.
Карта сайта, канонические адреса и разметка.
seo в site.yaml.У каждого языка свои адреса.
Обновляет сервер из новых образов.
## Что HERON делает за вас {#does}
### Поиск
Карта сайта, канонические адреса и разметка.
- **Влияет.** Как быстро находят новые страницы.
- **Настройка.** Блок `seo` в site.yaml.
### Языки
У каждого языка свои адреса.
- **Влияет.** Каждый язык ранжируется в своей стране.
### Агент
Платно. Обновляет сервер из новых образов.
- **Спрашивает.** В Telegram, перед каждым обновлением.
Тема получает группы title, html, items и рисует их модулем modules/cards.html. Ряды выглядят ровно при 2, 3, 4, 6 или 8 карточках.
Форма · two-lists
Ровно две группы ### со списками. Пишется как карточки, но по смыслу это противопоставление: подходит / не подходит, было / стало.
## Подойдёт ли вам HERON {#fit}
### Подходит
- Сайты компаний, блоги и документация.
- Несколько языков.
### Не цель
- Интернет-магазин с корзиной.
- Правка страниц в браузере.
Тема получает те же группы, что у карточек, и ставит их рядом модулем modules/cards.html.
Форма · table
Markdown-таблица со строкой-разделителем, колонок сколько угодно. В этой теме ячейка, которая начинается с +, подсвечивается как сильная сторона, а код в обратных кавычках остаётся кодом.
| Способ | Что делаете | Стоимость |
|---|---|---|
| git push | Правите и отправляете | Бесплатно на GitHub |
| Docker Hub | Собираете и отправляете образ | Нужен сервер |
| Статика | Собираете и копируете | Бесплатно на Pages |
отмечает, в чём инструмент силён.
## Способы хранения и публикации {#ways}
| Способ | Что делаете | Стоимость |
|---|---|---|
| git push | Правите и отправляете | + Бесплатно на GitHub |
| Docker Hub | Собираете и отправляете образ | Нужен сервер |
| Статика | Собираете и копируете | + Бесплатно на Pages |
Тема получает head и rows и рисует их модулем modules/table.html.
Форма · faq
Группы ### без списков: заголовок — вопрос, текст под ним — ответ. Из этой секции HERON ещё и собирает разметку FAQPage для поисковиков.
Нет. Страницы — текстовые файлы с несколькими простыми пометками.
Да. HERON — открытый код под AGPL-3.0.
## Вопросы {#faq}
### Нужно ли уметь программировать?
Нет. Страницы — текстовые файлы с несколькими простыми пометками.
### Это бесплатно?
Да. HERON — открытый код под AGPL-3.0.
Тема получает пары q, a и рисует их раскрывающимся списком модулем modules/faq.html.
Форма · facts
Строки ключ | значение без шапки таблицы. Короткие данные: формат, цена, срок, адрес.
## Коротко {#short}
Лицензия | AGPL-3.0
Образ | ghcr.io/fmstm/heron:prod
Языки | сколько нужно
Тема получает пары key, value и рисует их модулем modules/facts.html.
Форма · callout
Цитата > в секции без списка. Одно важное замечание, которое должно выделяться на фоне текста.
Сначала запустите строгую сборку: она останавливается на любом предупреждении, и битая ссылка не дойдёт до посетителей.
## Перед публикацией {#note}
> Сначала запустите строгую сборку: она останавливается на любом
> предупреждении, и битая ссылка не дойдёт до посетителей.
Тема получает цитату как HTML и рисует её модулем modules/callout.html.
Некоторые блоки темы этого сайта — не отдельные формы: тема узнаёт их по якорю.
{#publish} или {#ship} с карточками становится вкладками со схемой рядом.{#story} с шагами становится слайдами, которые листаются прокруткой.{#llms-gen} рисует генератор llms.txt.{#learn} на главной становится списком карточек-ссылок.Другая тема может нарисовать те же секции иначе: контент остаётся, меняется вид. Как добавить свой модуль — в разделе Тема и дизайн.