Делать онлайн-заметки с помощью Markdown и ревизий (сохраненных в файловой системе сервера)?

У меня есть ограниченный доступ к серверу с PHP, которому разрешено читать/создавать файлы в моей пользовательской области на сервере. Здесь я хотел бы настроить небольшой «самостоятельный», «совместный» онлайн-инструмент для создания заметок, написанный либо на PHP (поскольку я не могу запускать другие типы серверных процессов, например Ruby, на этом сервере) - либо как чистый Приложение HTML/JavaScript (с открытым исходным кодом), которое позволит:

  • Написание в Markdown с предварительным просмотром в реальном времени
  • Нет управления пользователями — любой может подписать себя под любым именем пользователя, которое пожелает (если мне нужна дополнительная защита, я настрою аутентификацию с помощью Apache)
  • Ревизии с отметкой времени и именем пользователя сохраняются при каждом редактировании + сохранении документа/статьи (например, в StackOverflow/StackExchange).
  • Ревизии/документы/сообщения сохраняются либо в виде файлов в файловой системе сервера, либо в локальной базе данных, например sqlite(хотя я мог бы справиться и с серверной частью MySQL); в качестве альтернативы я мог бы также звонить gitчерез оболочку на сервере (но из неустановленного/нестандартного местоположения).

Хорошие функции, но низкий приоритет:

  • ( перетаскивание изображений с загрузкой в ​​файловую систему сервера и заменой ссылки, как на SO/SE )
  • ( тегирование документов/постов/статей; поиск по тегам + полный текст как на SO/SE )
  • ( комментарии как на SO/SE, но без голосования )

Некоторые связанные альтернативы, которые я видел до сих пор:

  • https://firepad.io

    Пожарная площадка

    Без уценки, без явных изменений

  • https://stackedit.io

    СтекПравить

    Выглядит отлично, но сохраняет файлы либо в хранилище браузера, либо в облаке; JavaScript? (поэтому я могу поставить его на сервер - но, кажется, требует node.js?), иначе не PHP

  • http://etherpad.org

    Этерпад

    Нет уценки (но есть явные ревизии); JavaScript? (поэтому я могу поставить его на сервер - но, кажется, требует node.js?), иначе не PHP

  • https://лаверна.cc

    Лаверна

    Есть Markdown, но нет предварительного просмотра; нет подписи пользователя/автора; нет явных изменений; хранит в локальном хранилище браузера, JavaScript? (поэтому я могу поставить его на сервер - но, кажется, требует node.js?), иначе не PHP

  • http://paperwork.rocks/

    Оформление документации

    Демо у меня не работает, иначе PHP + MySQL (а npmобязательно?); есть пользователи, но не уверен, есть ли у него редактирование Markdown с предварительным просмотром в реальном времени или явные версии (которые в любом случае будут сохранены в MySQL, а не в файловой системе сервера).

(В конечном счете, было бы здорово решить эту проблему наподобие http://tiddlywiki.com/ — т. е. изменения в файле .html сохраняются в самом файле [хотя обратите внимание, что twiddly дает вам возможность загрузить новую версии html-файла, он не редактирует исходный html-файл на месте]; но в остальном мне это кажется немного сложным, а Markdown также является просто плагином для TiddlyWiki, и я не уверен, что (и как) он обрабатывает ревизии или подпись пользователя/автора…)

Так есть что-нибудь в этом духе, но ближе к моим желаниям?

anantgarg.com/2009/12/09/php-stackoverflow-clone - Qwench тоже хорош, но не сохраняет ревизии...
@BasilBourque - это не моя работа, это по умолчанию для firepad :) Ура!

Ответы (1)

Хорошо, в конце концов я написал свое решение, которое соответствует этому; посмотри пожалуйста

SPNoter_cut.png

Чтобы получить это:

git clone http://git.code.sf.net/p/spnoter/code SPNoter

В противном случае проверьте README.md в репозитории и справку в приложении, чтобы узнать больше...