This project will provide a real-time collaborative wiki based on markdown, and Operational Transformation like the ShareJS wiki example.
- make remote document updates trigger local markdown renderering
- add some way to upload resources (i.e. images, pdfs, zips, etc). dropzone? or could just use
- use browser editor (ACE, CodeMirror, etc) instead of text area
we should make an etherpad-based solution instead if you want these features
- add login/authentication system (passport?)
- investigate storing page versions
- investigate storing author information (based on login/authentication)
- try to use the latest ShareJS version (different API)
- make ShareJS collaboration work
- enable persistent pages via redis database
- make editor side-by-side with rendered page (rather than up/down)
- add some markdown-friendly css to make stuff look nice
- create a better template page with a header and a footer
Run the install dependencies script. You may need to use sudo.
./install_dependencies.sh
If you are using ubuntu add the configuration to /etc/default/redis-server:
ULIMIT=10032
Start redis. This may create a file called appendonly.aof that holds the contents of the wiki.
redis-server --appendonly yes
Now, start the wiki server.
node server
(nodejs server on ubuntu)
Goto your browser and hit this url:
http://127.0.0.1:8000/wiki/foo
http://evanhahn.com/understanding-express
https://www.npmjs.org/package/connect-basic-auth
ShareJS wiki example
markdown
Operational Transformation
ShareJS
Showdown
redis
passport
ACE
CodeMirror
dropzone