I would like to introduce the open source Ritzy web-based rich text editor: <a href="http://ritzyed.github.io/ritzy/" rel="nofollow">http://ritzyed.github.io/ritzy/</a>. It is based on React [1] and SwarmJS [2] and primarily intended for embedding into applications to support rich text entry with real-time collaboration. Technically, it works similarly to Google Docs and eschews ContentEditable in favor of a custom javascript-based editor surface and layout engine [3]. As far as I know, this is the first open source implementation of this technique. Please see the project README and source code [4] for more details. Note that this is pretty new and hasn't seen any real-world testing/usage, so there are some known bugs [5] and likely lots of unknown ones as well.<p>Depending on interest, I am considering offering the editor as a software-as-a-service solution. Because it is intended for real-time collaboration, a server-side component is (currently) required. While a simple implementation is part of the open source project, a more complete commercial service could handle storage, communications, security, availability, and provide a simple but powerful API for developers. The API would allow interaction with client-side editors and the data they contain, including real-time server-side push updates as editor contents change. Please let me know if your company or startup may be interested in such a service.<p><pre><code> [1] https://facebook.github.io/react/
[2] http://swarmjs.github.io/
[3] http://googledrive.blogspot.ca/2010/05/whats-different-about-new-google-docs.html
[4] https://github.com/ritzyed/ritzy
[5] https://github.com/ritzyed/ritzy/issues</code></pre>
FYI: GitHub master updated to version 0.1.4, demo (<a href="http://demo-ritzy.rhcloud.com/" rel="nofollow">http://demo-ritzy.rhcloud.com/</a>) updated to the same version. New DESIGN (<a href="https://github.com/ritzyed/ritzy/blob/master/docs/DESIGN.adoc" rel="nofollow">https://github.com/ritzyed/ritzy/blob/master/docs/DESIGN.ado...</a>), INSTALLATION (<a href="https://github.com/ritzyed/ritzy/blob/master/docs/INSTALLATION.adoc" rel="nofollow">https://github.com/ritzyed/ritzy/blob/master/docs/INSTALLATI...</a>), and API (<a href="https://github.com/ritzyed/ritzy/blob/master/docs/API.adoc" rel="nofollow">https://github.com/ritzyed/ritzy/blob/master/docs/API.adoc</a>) docs. Demo has new controls that use the API. A bunch of bug fixes and improvements esp. around some more complex collaboration stuff e.g. operations that overlap with remote selections and cursors as one example.
A blog post introducing the project: <a href="https://medium.com/@ramangupta/a-new-rich-text-editor-for-the-web-with-real-time-collaboration-710ffdf6ee2c" rel="nofollow">https://medium.com/@ramangupta/a-new-rich-text-editor-for-th...</a>