Yet Another Static Site Generator Генератор статичных сайтов из Markdown. Цель — максимальная совместимость с Obsidian
Find a file
2025-11-06 14:54:12 +03:00
.gitverse/workflows Попытка сборки 2025-10-11 18:18:07 +03:00
cmd Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00
internal Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00
scripts Релиз 2025-10-12 14:57:12 +03:00
templates - Добавлена поддержка двух форматов даты в методе Date() 2025-11-04 16:30:02 +03:00
.dockerignore refactor(build): упрощение системы сборки и рефакторинг кода 2025-10-11 17:20:06 +03:00
.gitignore Перевел CLI на Cobra и добавил goreleaser 2025-09-23 00:51:56 +03:00
.golangci.yml Первый коммит минимально рабочей версии 2025-09-20 22:27:56 +03:00
.goreleaser.yaml Релиз 2025-10-12 14:57:12 +03:00
config_example.yaml В основном, стилевые правки 2025-10-10 00:28:24 +03:00
docker-compose.yml Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00
Dockerfile Больше логов 2025-10-11 17:58:04 +03:00
go.mod Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00
go.sum Отказ от cobra cli 2025-10-12 14:17:36 +03:00
LICENSE Перевел CLI на Cobra и добавил goreleaser 2025-09-23 00:51:56 +03:00
main.go Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00
Makefile Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00
README.md Переезд в собственный git хостинг 2025-11-06 14:54:12 +03:00

YASSG

Yet Another Static Site Generator

Простой генератор статических сайтов. Основная цель — совместимость с форматом Obsidian.

Установка

go install gitrepo.ru/neonxp/yassg@latest

Конфигурация

YASSG поддерживает несколько способов конфигурации с различными приоритетами:

  1. Флаги командной строки (наивысший приоритет)
  2. Переменные окружения
  3. Конфигурационный файл
  4. Значения по умолчанию (низший приоритет)

Флаги командной строки

  • --config - путь к конфигурационному файлу
  • --log-level - уровень логирования (debug, info, warn, error)

Переменные окружения

Переменные окружения должны начинаться с префикса YASSG_. Например:

  • YASSG_VAULT=./data
  • YASSG_OUTPUT=./public
  • YASSG_SERVER_LISTEN=:8000
  • YASSG_LOGGING_LEVEL=debug

Конфигурационный файл

Конфигурационный файл может быть расположен в следующих местах (в порядке приоритета):

  1. Текущая директория (./config.yaml)
  2. Пользовательская директория (~/.config/yassg/config.yaml)
  3. Системная директория (/etc/yassg/config.yaml)

Пример конфигурационного файла смотрите в config_example.yaml.

Использование

Создание конфигурационного файла

# Интерактивное создание конфигурационного файла
yassg init

Генерация сайта

# Генерация с конфигурацией по умолчанию
yassg generate

# Генерация с указанным конфигурационным файлом
yassg generate --config ./my-config.yaml

# Генерация с уровнем логирования debug
yassg generate --log-level debug

Запуск веб-сервера

# Запуск сервера с конфигурацией по умолчанию
yassg serve

# Запуск сервера с указанным конфигурационным файлом
yassg serve --config ./my-config.yaml

# Запуск сервера с уровнем логирования debug
yassg serve --log-level debug

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

Лицензия

Этот проект распространяется под лицензией GNU General Public License v3.0. Смотрите файл LICENSE для подробной информации.