Переписал блог на новый движок за 1 час

#go #blog #obsidian #docusaurus #markdown #knowledge-management

Год или больше я застрял на Docusaurus. Недавно я от него избавился — написал свой движок на Go за час. Вот почему и как.

Зачем вообще нужен блог

Блог — это не просто сайт. Это публичная сторона моей системы управления знаниями. Есть и приватная: заметки о встречах, списки покупок, задачи, всё что угодно. Для этого Obsidian стал стандартом.

Workflow был простой:

  1. Собираю идеи в приватном репозитории
  2. Линкую и дорабатываю заметки
  3. Когда материала достаточно — перекидываю .md файл в публичную папку блога
  4. Делаю git commit && git push
  5. Блог пересобирается из markdown

Всё. Никакого CMS, никакой базы данных, никакого редактора в браузере.

Что сломалось с Docusaurus

Docusaurus начал есть больше 2 ГБ RAM при сборке обычного блога. На продакшен-сервере это стало невозможным.

Варианты, которые я рассматривал:

  • Собирать локально, пушить raw HTML — засоряет git историю
  • Собирать локально, заливать HTML по SFTP — медленно и раздражает
  • Найти замену — очевидный выход

Я потратил время на поиск альтернатив, но в итоге решил написать своё.

Решение: движок на Go за 1 час

Vibe-кодинг с AI — это реально работает для таких задач. Написал движок на Go, который делает то же самое, что делал Docusaurus, только эффективнее.

Что вошло в первую версию:

  • Рендеринг markdown → HTML
  • Навигация и структура сайта
  • Сжатие изображений в WebP
  • Graph view как в Obsidian — визуализация связей между заметками

Последний пункт особенно приятный: это именно та фича, которую я хотел от Obsidian, но в публичном блоге.

Итог

Система управления знаниями снова работает без трений. Workflow не изменился — я по-прежнему просто перекидываю .md файлы и делаю git push. Только сборка теперь лёгкая и быстрая.

Исходный код движка открыт:
👉 https://github.com/tot-ra/blog-engine-md