Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hansihe/collaborativewiki
A markdown-based wiki with realtime collaborative features. Node.js used on the backend, webpack for frontend.
https://github.com/hansihe/collaborativewiki
Last synced: about 1 month ago
JSON representation
A markdown-based wiki with realtime collaborative features. Node.js used on the backend, webpack for frontend.
- Host: GitHub
- URL: https://github.com/hansihe/collaborativewiki
- Owner: hansihe
- Created: 2015-01-01T22:39:55.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2015-06-22T23:38:41.000Z (over 9 years ago)
- Last Synced: 2024-11-04T04:31:09.496Z (about 2 months ago)
- Language: JavaScript
- Homepage:
- Size: 3.74 MB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
CollaborativeWiki
=================A markdown-based wiki with realtime collaborative features. Node.js used on the backend, browserify for frontend.
Written as a personal project, trying to get some experience writing interactive javascript applications.
Uses react.js and react-router for frontend, remarkable with customizations for markdown rendering.Please note that this is not safe at all for use on open networks. The server does not yet verify incoming data from the client before processing it.
## Todo
### High priority
* [x] Text synchronization across clients using ot
* [x] Proper editor (codemirror)
* [x] Realtime markdown preview utilizing react.js diffing
* [x] Cursor synchronization
* [x] Messages for when people join/leave documents
* [x] Proper document lifecycle management on both client and server
* [ ] Implement reconnect on disconnect
* [ ] Stop trusting the damned client (verify inputs, fail gracefully)
* [x] Proper dependency management### Lower priority
* [ ] Accounts
* [ ] History viewer (probably with a fancy slider so you can go back and fourth through the document history)
* [ ] Abstract the parts responsible for ot out to another module. (There is already a pretty good separation here, should be fairly easy)