I need to implement collaborative editing of data model based on JSON document. Currently I found 2 open source frameworks: ShareJS (NodeJS) and OpenCoWeb.
First one seems to be too young, it has incomplete documentation and develops rapidly. I thought he is too raw.
Second one looks great. Its big cons is a date of the last commit - it's January. So seems it isn't supported now.
What framework did you use for Operational Transformation? Which of them can be used for non-pet project? Both open source and commercial products are OK for me.
Personally i would recommend sharejs:
Reasons:
Active community thats helpful (in my estimation larger than that of opencoweb)
The author (of sharejs) is now employed by a company (Lever) that's making use of sharejs in production applications. There's thus a lower likelihood of sharejs turning into abandonware.
I going to use in production (im about to deploy, still in pre-alpha) and my experience so far has been excellent
Why not opencoweb?
Project seems stalled, no new commits in a while.
(my experience) Its not very mature yet, and the authors do not seem very eager to maintain it, see this example https://github.com/opencoweb/coweb/pull/237 that's been sitting for months as at now for a trivial but deal-breaking python3 issue.
Im not aware of any production applications of the project.
There is some unhealthy level of integration with the dojo framework, (at least when i tried it, ), which was a problem for me, if you already use dojo, then its not a problem.
My experience with developing with this left a bad taste in my mouth (even with all the docs), tried for at least a couple of months to get something working but i did not like the result, changed to sharejs and within a few weeks i had something very reasonable.