BookStack - база знаний, инструкций и фанфиков

BookStack - база знаний, инструкций и фанфиков, image #1

Немного из истории

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

Все это время я вел инструкции там, но однажды начальнику не понравилась структура, потому он сказал, чтобы я больше не писал статьи и инструкции в Pyrus. Он с помощью ИИ сварганил сайт: поначалу был костыльным, потом стал относительно юзабельным. Я кидал ему, что еще нужно исправить, но почему-то он забил на этот сайт и больше не дорабатывал его, так как его устраивал текущий функционал, пусть и местами костыльный.

Я писал инструкции там, переносил все с Pyrus на наш сайт небольшой фирмы. Писал-писал, но почувствовал неудобство. Однажды я хотел сварганить себе сайт, но подумал, что потрачу уйму времени и сил, вдобавок надо постоянно поддерживать его. Да, было бы серьезным плюсом к резюме, но в данный момент это мне мешает. А сайт собственный хотел, чтобы туда продублировать свои инструкции с рабочего сайта: однажды я уволюсь, рабочий сайт и площадки будут недоступны, мои инструкции, написанные мною, останутся у него и у других, а обо мне забудут. Как минимум, чтобы я смог вытащить свои же инструкции к себе.

Сначала я загружал в формате PDF к себе. Потом подумал, что мне нужен доступ к инструкциям из сети, чтобы я мог сразу прочесть через телефон или через ноутбук в удобном веб-сайте, а не через программу Adobe Reader. Рыться в папках Windows не особо хотелось, как бы я ни пытался навести порядок, спустя неделю снова бардак с файлами. Такое бывает по работе.

Так как я хорошо овладел Linux, хотя и не тяну на уровень крутого системного администратора, но умею разворачивать docker-контейнеры - это мини-системы, которые заточены под конкретный сервер и не засоряют основную систему. Я слышал о разных решениях, вот и начал искать и тестировать.

До этого на предыдущем месте работы я писал инструкции в DokuWiki. Он богат плагинами, можно настроить под себя, но интерфейс все равно архаичный, его выбрали прежние коллеги по той причине, что он просто весил меньше всех, а визуально был некрасив. Изначально думал его развернуть, так как я пользовался им когда-то, но потом передумал.

Развернул Wiki.js - оказалось ерундой. Сложнее писать инструкции, интерфейс тоже староват, в итоге выяснилось, что проект заброшен. Не понимаю, кто хвалил его, но он годится для командной работы или в корпорациях вместо того же DokuWiki. Наконец, мне не нужна была своя Википедия (хотя и думал о ней). Мне нужна была обычная и приятная на глаз база знаний.

Дальше было два выбора, которые меня устроили: Docmost и BookStack. Сначала я развернул Docmost - оказался очень простым, быстрым, минималистичным, нужная иерархия есть, но все равно не то. Для ведения заметок и небольших инструкций и памяток он идеален, но в PDF не выгрузишь, там есть некоторые ограничения, которые меня не устраивают. Однако, он действительно отличный. И простой. Слишком простой для меня.

Я сначала увидел BookStack и подумал, что фигня какая-то. Интерфейс отталкивал. Но почитал дальше, узнавал и понял - это по дефолту он не особо приятен, а так поддается кастомизации, внешним улучшениям и цветовому оформлению. Если проявить усилия, считай, что он твой. Единственное, он явно сложный - без помощи гуглежа и ИИ не обойтись.

В итоге мне понравилась платформа BookStack, хотя его разворачивать было труднее, а также настраивать. Я кучу вещей наделал, чтобы он заработал так, как мне хотелось, но это стоило того. Потому я перенес все свои инструкции на эту платформу. По крайней мере, для меня он удобней, чем рабочий сайт.

Теперь о BookStack

BookStack - это веб-сервер, платформа для ведения базы знаний. Несмотря на то, что в нем есть некоторые особенности, которые характерны для фанатских писателей, он предназначается сисадминам и технарям. То есть сама платформа не рассматривается, как написание фанфиков, хотя, на мой взгляд, она для этой цели подходит. Пусть и не такая крутая, как Книга Фанфиков (у нее целая команда и давно существует), но хотя бы свой собственный сервер, где я хозяин.

Он бесплатен, активно обновляется, нет платных функций - подразумевается, что у администратора руки растут с нужного места и он сам превратит из гусеницы в бабочку, сам добавит и улучшит сайт под свои нужды, насколько, собственно, позволяет сама платформа. А она многое позволяет, хотя и не все: есть вещи, которые твердо прибиты гвоздями.

Да, BookStack я развернул для инструкций и статей по настройкам чего-то и устранению ошибок того-то. Это его основное предназначение. Но по скриншотам буду объяснять, что в нем есть.

Несмотря на то, что для авторизации требуется почта, это чисто символически. Если нужно будет сбросить пароль, либо через почту, либо через терминал. Так как я единственный пользователь, то для меня это не проблема.

Стартовая страница выглядит так:

У BookStack есть светлая и темная темы. Цвет верхней панели можно изменить самому. Я выбрал черный.
У BookStack есть светлая и темная темы. Цвет верхней панели можно изменить самому. Я выбрал черный.

Сначала пройдемся по настройкам:

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

Если вкратце, можно настроить права доступа пользователям, возможность оставлять/отключать комментарии, создавать пользователей и все в этом духе. Но больше привлекает настройка оформления: можно в качестве заголовка сайта указать любое название (я указал IT), ставить логотип изображения (даже в браузере будет иконка видна), а также менять цвет верхней панели и текста в меню и в подменю.

Мало? Если вы знаток языка таблицы стилей CSS и разметки текста HTML, то можно его кастомизировать с помощью кода. Без него сам веб-сервер был бы более уродлив.

Это все записывается тут.
Это все записывается тут.

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

Что же, теперь перейдем к структуре.

Структура

У BookStack есть четырехуровневая иерархическая структура: Полки, Книги, Главы и Страницы. Если перевести на язык фан-писателей, то Полки - это Фэндомы, Книги - это сами фанфики, Главы - это своего рода тома к книгам (первый, второй и т.д.), а Страницы - это сами главы (Глава 1, Глава 2 и т.д.). Конечно, можно превратить Главы в главы, а страницы в страницы, но так можно засорить систему.

Полки - это своего рода раздел, главный раздел, общая категория, верхушка. Они необязательны, но на их основании можно привязать Книги.

Это полки - как бы основные разделы. Необязательны, но лучше структурировать.
Это полки - как бы основные разделы. Необязательны, но лучше структурировать.

Книги - это подразделы, категории, оглавление группы инструкций или название фанфика или фэндома. Книги обязательны в иерархии: они могут быть либо самостоятельными, либо входить в Полки. На основании Книг создаются либо Главы (их подразделы), либо страницы (основной текст).

Вот книги - как бы основное подразделение. В данном скриншоте эти книги относятся к полке «Инструкции администратора ИТ».
Вот книги - как бы основное подразделение. В данном скриншоте эти книги относятся к полке «Инструкции администратора ИТ».

Главы - это под-подразделы к Книгам, необязательны к созданию, но служат разграничением по смыслу инструкций. То есть как бы типы инструкций. На их основе создаются Страницы.

Вот главы. В данном случае главы относятся к книге «Windows», книга разделена на главы «Общие», «ПО», Бэкапы» и т.д.
Вот главы. В данном случае главы относятся к книге «Windows», книга разделена на главы «Общие», «ПО», Бэкапы» и т.д.

Страницы - основа, костяк, там и пишем все инструкции, статьи или все, что взбредет в голову. Они обязательны, иначе зачем создаем Полки, Книги и Главы? Это четвертый уровень вложенности - крайний. На основе страниц ничего не создается.

Вот страницы - входят в главу «Общие», в эту группу входят три инструкции.
Вот, собственно, сама инструкция, содержимое страницы.
1 of 2
Вот страницы - входят в главу «Общие», в эту группу входят три инструкции.

Все эти страницы, главы и книги можно перетаскивать и перепривязывать куда надо. Например, страницу «Синий экран CRITICAL_PROCESS_DIED» я могу перенести из главы «Общие» в главу «Windows 11». Могу перенести главу «Windows 11» вместе со всеми инструкциями, которые в нее входят, из книги «Windows» в книгу «Linux». Могу перетащить книгу со всеми главами и инструкциями в другую полку. В общем, по ошибке созданная не туда инструкция не будет проблемой: легко перенести. Правда, не путем перетаскивания мышкой, а нажав на кнопку «Переместить» (справа в середине).

Иерархия может выглядеть такой:

  1. Полка→ Книги → Глава → Страница;
  2. Полка → Книга → Страница;
  3. Книга → Глава → Страница;
  4. Книга → Страница.

Можно созданную инструкцию отредактировать. Если она в процессе, то происходит автосохранение черновика, так что никуда не пропадет работа. Можно дать права доступа: чисто читать, с возможностью писать, но не удалять, а также полные права. Можно создать копию инструкции и эту копию переделывать. Есть история версий, можно просматривать.

У нее два редактора: Markdown (для технарей и сисадминов) и WYSIWYG (с удобными кнопками, визуальный редактор).

Это редактор Markdown - слева пишется текст вместе с кодом, более универсальный, но сложный. Справа виден предпросмотр, так что можно заранее узнать, как будет внешне выглядеть инструкция.
Это редактор WYSIWYG - визуальный, с кнопками, можно оформлять как хочешь, заодно сразу будет видно, как выглядит инструкция - для новичков, но не подходит для технарей по причине своеобразного форматирования, несовместимого с Markdown.
1 of 2
Это редактор Markdown - слева пишется текст вместе с кодом, более универсальный, но сложный. Справа виден предпросмотр, так что можно заранее узнать, как будет внешне выглядеть инструкция.

Можно экспортировать в пять видов файлов:

В отличии от Docmost, тут есть выгрузка в PDF.
В отличии от Docmost, тут есть выгрузка в PDF.

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

Можно сделать сортировку, как удобно: что выше, что ниже. Можно указывать теги в книгах и главах (своего рода метки).

Чем выгружать в PDF по одиночке, можно сразу выгрузить Книгу - и выгрузятся все страницы (инструкции). Полки не выгружаются, так как по смыслу Полки - это полки, они стоят на месте, а вот книги можем вытащить вместе с главами и страницами.

Вот так выглядит PDF, выгруженный вместе с книгой - инструкции выгрузились автоматически.
BookStack - база знаний, инструкций и фанфиков, image #15
1 of 2
Вот так выглядит PDF, выгруженный вместе с книгой - инструкции выгрузились автоматически.

Конечно, простенько, но со вкусом. Но вот его основные возможности.

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

Заключение

Подходит ли для технаря и системного администратора? Да, вот прям идеально подходит. Я нашел свой инструмент для ведения базы знаний. И остался очень доволен. Хотя потратил уйму времени на настройки, чтобы привести веб-сервер к нужному виду.

Подходит ли для фикрайтера? Если готов смириться со здешними ограничениями (отсутствие подарков, системы оценок, лайков, относительно простым оформлением сайта), то да - он привыкнет. Но в целом нет: все-таки это не с нуля написанный сайт, это веб-сервер, в котором не все можно доработать и превращать его в аналог Книги Фанфиков. Но написать фанфики, затарить их туда, хранить и периодически читать самому спокойно- да, он подходит, как хранилище данных.

Его минусы есть, но зачем платная база знаний, если есть свой сервер, которым только ты управляешь и за который только ты отвечаешь? Ради сбора инструкций, их структуризации BookStack выполняет эту задачу и закрывает потребности на 100%. Тут можно привыкнуть.

24 views·1 share