Привет, друзья! Спешу поделиться с вами результатом моего небольшого творческого weekend-марафона — Simple Blog Engine. Честно говоря, я никогда не был доволен существующими решениями для ведения блога: то они слишком громоздкие, то слишком сложные, то не позволяют писать в любимом Markdown… В общем, я решил создать то, что идеально подойдет мне самому (а может, и вам тоже).

Почему я это сделал?

Мне хотелось писать просто, в привычном Markdown, не думая о серверах, базах данных и прочей инфраструктуре. Просто открыть любимый редактор кода и творить. А потом нажать кнопку — и вуаля, пост опубликован. Кажется, я этого добился!

Если честно, я перепробовал многие популярные генераторы статических сайтов:

  • Hugo — мощный, но тонна настроек и свой шаблонизатор
  • Jekyll — классика, но Ruby-зависимости порой становятся головной болью
  • Gatsby — впечатляющий, но нужен ли мне GraphQL для простого блога?
  • Next.js — отличный фреймворк, но кажется перебором для личных заметок
  • Eleventy — неплох, но всё равно слишком много конфигурации

В каждом из них я тонул в документации, настройках темы, плагинах… А хотелось просто писать! Так и родился Simple Blog Engine — минимум настроек, никаких сложных зависимостей, только Markdown и базовый HTML/CSS. Открыл — написал — опубликовал.

Что получилось

  • 🚀 Молниеносная скорость — статический HTML летает, а не ползает
  • 📝 Пишу как хочу — весь контент в Markdown, прямо как эта заметка
  • 🌓 Светлая/тёмная тема — для дневных сов и ночных жаворонков
  • 🏷️ Теги — чтобы не заблудиться в своих же мыслях
  • ⏱️ Время чтения — потому что уважаю ваше время
  • 🔄 Обновляемость — движок отдельно от контента, не нужно всё переделывать при обновлениях
  • 🖋️ Удобное создание постов — без лишних телодвижений
  • 🚢 GitHub Pages — и ни копейки за хостинг!

В процессе разработки я заморочился с оптимизацией для мобильных устройств и дизайном (я же программист, не дизайнер!), но, кажется, получилось неплохо. Особенно горжусь тем, как работает тёмная тема — она переключается автоматически в зависимости от ваших системных настроек.

Как попробовать?

# Установить глобально — самый простой способ
npm install -g simple-blog-engine

# Или прямо в проект
npm install simple-blog-engine

Потом две простые команды:

# Создаём блог
npx simple-blog-engine init

# И запускаем
npm run dev

…и вы уже можете начать писать! Я специально сделал так, чтобы новый пост создавался одной командой:

npm run post

Если вам интересно, загляните в репозиторий на GitHub или установите пакет из npm. Буду рад, если мой проект пригодится кому-то ещё, кроме меня. И да, буду благодарен за звёздочку на GitHub! 😉