I have a limited access to a server running PHP, which is allowed to read/create files in my user area on the server. Here I would like to set up a small "self-hosted", "collaborative" online note taking tool, written either in PHP (as I cannot run other kind of server processes, e.g. Ruby, on that server) - or as a pure HTML/JavaScript application (open-source), which would allow:
- Writing in Markdown, with live preview
- No user management - anyone can sign themselves as any username they wish (if I need more protection, I'll set up authentication from Apache)
- Timestamped revisions with username are saved upon each edit+save of a document/article (like on StackOverflow/StackExchange)
- Revisions/documents/posts are saved either as files on the server filesystem, or in a local database like
sqlite
(although I could manage with a MySQL backend, too); alternatively I could also callgit
through a shell on the server (but from non-installed/non-standard location).
Nice features, but low priority:
- (drag & drop of images with upload to server's filesystem and replacement link, as on SO/SE)
- (tagging of documents/posts/articles; search by tags + fulltext as on SO/SE)
- (comments as on SO/SE - but no voting)
Some related alternatives I've seen so far:
No markdown, no explicit revisions
Looks great, but saves files either in browser storage, or in cloud; JavaScript? (so I can put it up on server - but seems to require node.js
?), otherwise not PHP
No markdown (but has explicit revisions); JavaScript? (so I can put it up on server - but seems to require node.js
?), otherwise not PHP
Has markdown, but no live preview; no user/author signing; no explicit revisions; stores in browser local storage, JavaScript? (so I can put it up on server - but seems to require node.js
?), otherwise not PHP
The demo doesn't work for me, otherwise PHP + MySQL (but npm
is required?); has users, but not sure if it has Markdown editing with live preview, or explicit revisions ( which would anyways be saved in MySQL, not on the server file system ).
(Ultimately, it would be great to solve this in the manner of http://tiddlywiki.com/ - i.e. the changes to a .html file are saved in the file itself; but otherwise to me it seems a bit complex, and Markdown is also a plugin for tiddly, and not sure if (or how) it handles revisions or user/author signing...)
So is there anything in this vein, but closer to my wants?