- PVSM.RU - https://www.pvsm.ru -
Когда смотришь на обилие CMS систем [1], то кажется, что не существует такой деятельности в сети, для которой не существовало бы сопутствующего Web-приложения. Для некоторых же областей количество приложений просто зашкаливает — для совместного редактирования документов (WIKI) их больше двух десятков [2]. Выбирай и пользуйся. Наверняка что-нибудь хорошее найдешь.
Ну, в общем, у меня не получилось.
Причем запросы то у меня не очень и большие: нормальная история изменений, поддержка сторонних редакторов, простая установка, известный язык разметки, удобная расширяемость, отсутствие (да, именно отсутствие) wysiwyg, эффективный поиск. Конечно, хотелось бы еще возможности добавлять комментарии в коде в такой же разметке и интеграции с существующими системами, но это уже из области фантастики. Но даже мои скромные требования, как оказалось, ни одна из рассмотренных мной CMS не поддерживала. Более-менее хорошо себя показала связка Confluence+FishEye, но какая-то она уж очень монстрообразная для индивидуального использования. Кроме того, в Confluence убрали разметку [3] в четвертой версии, что грустно.
В общем, пришлось браться за работу самому. С самого начала было понятно, что в одиночку разработку большой системы не потянуть, поэтому все надо делать очень просто и по максимуму использовать существующие технологии:
Что касается деталей реализации, то:
Я использую чуть более сложный сервер на своем сайте и простой сервер для ведения локальной документации. Локальная документация представляет собой *.ivy
файлы, раскиданные по разным директориям.
Простой сервер запускается примерно так:
cd c:pathtoprojectexamples
node simple-server.js --path=c: --plugin=code-plugin.js --plugin=html-plugin.js --template=simple-template.html
В корне диска лежит index.ivy
со ссылками на другие проекты. В них все — от рецептов, до проектной документации. На мой взгляд — очень удобно.
Если вы заинтересовались, то исходный код, примеры использования, ответы на вопросы, и инструкцию по установке можно найти в репозитории проекта [5] на GitHub.
P.S. На КПДВ изображен плющ ирландский (Irish ivy [9]). Пока логотипа у проекта нет, его функцию выполняет эта картинка из Википедии, так что в процессе написания статьи ни один копирайт, как я думаю, не пострадал.
Автор: Alex_At_Net
Источник [10]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/javascript/36840
Ссылки в тексте:
[1] CMS систем: http://en.wikipedia.org/wiki/List_of_content_management_systems
[2] больше двух десятков: http://en.wikipedia.org/wiki/Comparison_of_wiki_software
[3] убрали разметку: http://blogs.atlassian.com/2011/11/why-we-removed-wiki-markup-editor-in-confluence-4/
[4] bootstrap: http://twitter.github.io/bootstrap/
[5] Движок разметки: https://github.com/AlexAtNet/ivy-markup
[6] очень простое: https://github.com/AlexAtNet/ivy-markup/blob/master/examples/html-plugin.js
[7] 111 штук: https://github.com/AlexAtNet/ivy-markup/tree/master/test
[8] 220 строк: https://github.com/AlexAtNet/ivy-markup/blob/master/examples/simple-server.js
[9] Irish ivy: http://en.wikipedia.org/wiki/Hedera_hibernica
[10] Источник: http://habrahabr.ru/post/183792/
Нажмите здесь для печати.