Нодоку

целевая страница, ориентированная на контент, и
статический генератор сайта

Nodoku — это набор библиотек, направленных на создание красивых и адаптивных целевых страниц без особых усилий.

Nodoku использует файл Markdown в качестве поставщика контента и файл Yaml в качестве визуального конфигуратора.

Nodoku — это набор библиотек, позволяющий без труда создать целевую страницу или статический сайт.

Nodoku — это фреймворк, работающий поверх NextJS , React и Tailwind .

Nodoku использует базовые возможности NextJS для рендеринга на стороне сервера (SSR).

Движок Nodoku разбирает предоставленный файл Markdown на блоки контента.

Затем он визуализирует каждый блок, используя конфигурацию, указанную в файле Yaml, который называется скином .

шаг-1

Путь Нодоку

Nodoku предлагает простой способ создания контентно-ориентированных целевых страниц с использованием Markdown и Yaml

шаг-1

Шаг 1: Подумайте

Создайте контент, продвигающий ваш продукт или услугу в виде файла MD

Сосредоточьтесь на теме вашего продукта/услуги, чтобы подчеркнуть его преимущества.

Используйте свой любимый текстовый редактор для создания содержательного файла MD (markdown), не беспокоясь о его представлении.

Используя разделитель блоков контента — фрагмент кода Yaml — структурируйте файл контента, чтобы его можно было отправить в парсер Nodoku.

шаг-2

Шаг 2: Кожа

Скин файла MD с использованием простой конфигурации Yaml и доступных компонентов

Как только вы будете довольны сообщением, которое передает ваша целевая страница, начните с ее оформления.

Скин Nodoku — это файл Yaml, который связывает разделы в вашем файле MD с блоками презентации.

Вы можете выбирать среди различных компонентов презентации, включая Карусель, Героя и различные типы компонентов Карт.

шаг-3

Шаг 3: Тонкая настройка

Используйте параметры конфигурации для точной настройки представления целевой страницы

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

Вы можете изменить цвет фона, цвет текста, границы и другие визуальные детали вашей презентации.

Обычно компоненты Nodoku поддерживают Tailwind CSS из коробки, поэтому вы можете точно настроить индивидуальные настройки с помощью Tailwind.

Вот пример

Предположим, вы создаете целевую страницу продукта.

Создать файл MD

создайте файл контента Markdown, описывающий ваш продукт

# Title of my awesome product
## Subtitle of my awesome product

Description of my product.
And another line of description.

![my-awesome-product](./images/my-awesome-product.png)
Составить файл Yaml скина

черновик файла Yaml, настраивающего визуальное представление

rows:
  - row:
      components:
        - mambaui/hero-left-text:
            selector:
              attributes:
                id: product-1

И вот результат

Название моего потрясающего продукта

Подзаголовок моего потрясающего продукта

Описание моего продукта.

И еще одна строка описания.

изображение Freepik

мой-удивительный-продукт

И да!

Эта самая страница была создана с помощью Nodoku!

Проверьте исходный код этой страницы по адресу
https://github.com/epanikas/nodoku-demo-page

Почему вам стоит попробовать Nodoku

Подход, ориентированный на контент, исключающий отвлечение внимания

В отличие от Nodoku, подавляющее большинство конструкторов сайтов используют так называемый подход WYSIWYG (What You See Is What You Get), когда сайт создается постепенно, путем заполнения веб-форм прямо на визуальных элементах.

Несмотря на то, что такой подход дает очень быстрое визуальное представление о вашей будущей странице, у него есть существенный недостаток — он сильно отвлекает .

Nodoku предлагает другой подход: сначала вы создаете контент .

Контент создается в текстовой форме в файле Markdown, и в этот момент ничто другое не имеет значения .

Содержание и представление строго разделены

Nodoku пропагандирует строгое разделение между содержанием и представлением, что обеспечивает большую гибкость, когда одно можно изменять, не влияя на другое.

Данный подход иллюстрируется тем фактом, что контент и дизайн представлены разными файлами — файлом Markdown для контента и файлом Yaml , называемым скином , для визуального представления.

Строгое разделение концепций контента и дизайна позволяет независимо редактировать их, не беспокоясь о влиянии одного на другое.

Встроенная многоязычная локализация

Nodoku был разработан с нуля с учетом необходимости локализации контента.

Контент в Nodoku представлен набором блоков контента , каждый из которых представляет собой отдельную часть контента (обычно абзац или заголовок).

Контент становится легко локализуемым, поскольку каждый блок контента имеет свой уникальный ключ.

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

Более подробную информацию можно найти на сайте nodoku-i18n .

Компоненты Nodoku обладают естественной отзывчивостью

Каждый компонент Nodoku тщательно продуман таким образом, чтобы он корректно отображался на любом устройстве просмотра.

Доступные в настоящее время наборы компонентов Nodoku, Nodoku-Flowbite и Nodoku-MambaUI, основанные на наборе визуальных блоков Flowbite и Mamba UI соответственно, являются адаптивными и обеспечивают наилучший пользовательский опыт .

Скин Nodoku — файл Yaml, обеспечивающий визуальную настройку — основан на движке стилей Tailwind CSS, который предоставляет большие возможности для настройки адаптивного дизайна.

Макет, основанный либо на CSS-сетке, либо на CSS-flex

Страница Nodoku организована как набор строк , каждая строка имеет один или несколько визуальных компонентов.

Такая строковая компоновка дает четкое представление о структуре вашей страницы и предсказуемое визуальное размещение элементов.

По умолчанию каждая строка на странице Nodoku использует сетку CSS для организации внутренних элементов строки.

Однако при необходимости макет строки можно переключить на CSS flex .

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

SEO оптимизирован, благодаря рендерингу на стороне сервера 123 456

Nodoku использует рендеринг на стороне сервера, работающий на базе фреймворка NextJS .

Все страницы Nodoku создаются заранее, в процессе автономной сборки.

Это обеспечивает не только молниеносную загрузку страниц, но и поисковую оптимизацию , поскольку каждая страница легко доступна и может быть легко просканирована поисковыми системами.

Перед сканированием страницы поисковой системой не требуется выполнять код Javascript.

В результате вся страница естественным образом становится SEO-дружественной .

Возможность расширения за счет новых визуальных компонентов

Фреймворк Nodoku изначально является расширяемым, поскольку именно конечный пользователь управляет сопоставлением между визуальными компонентами и конфигурацией скина Yaml.

Nodoku использует так называемый поставщик компонентов — функцию, которая возвращает визуальное представление компонента в соответствии с описанием файла скина Yaml.

Эта реализация отвечает за конечный рендеринг компонента с использованием темы и локализации.

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

Эти же карточки можно представить как компонент «Карусель» .

Это всего лишь вопрос конфигурации кожи.


rows:
  - row:
      components:
        - flowbite/carousel:
            selector:
              attributes:
                sectionName: advantages

Большая часть этого сайта доступна на следующих языках

И ваш тоже может быть таким, с помощью простой локализации Nodoku.

Узнайте больше о возможностях локализации Nodoku

Атрибуции

На этом сайте используются следующие компоненты, полученные из творческих вкладов третьих лиц:

Шрифты и иконки от

Font Awesome 6 - https://fontawesome.com/ Лицензия: Лицензия CC BY 4.0 https://creativecommons.org/licenses/by/4.0/

Heroicons - https://github.com/tailwindlabs/heroicons Лицензия: MIT https://opensource.org/licenses/MIT

Иконки Material Design - http://google.github.io/material-design-icons/ Лицензия: Apache License Version 2.0 https://github.com/google/material-design-icons/blob/master/LICENSE