sveith/jinfinote

JavaScript implementation of the Infinote protocol for collaborative editing

JavaScript

113

0 commits

updated Mar 20, 2011

See the code

README

jinfinote is a JavaScript implementation of the Infinote protocol, an open
standard for software supporting collaborative real-time editing of text
files.

The goal of this project is to aid in creating a collaborative real-time editor
for the web, similar to EtherPad. Desktop editors such as Gobby are already
available for many platforms, and the intention is to close the missing link to
the web browser.

jinfinote is split into four JavaScript files:

 * algorithm/operations.js
     Contains the basic text operations (Insert, Delete, Split and NoOp) and
     their transformations.
 * algorithm/request.js
     Defines do, undo and redo requests and methods to change them (transform,
     fold, mirror etc.).
 * algorithm/state.js
     Contains the State and Vector classes, which are the central classes of
     jinfinote.
 * algorithm/text.js
     Implements the Buffer class, among others, which enables string operations
     on segmented texts. This is necessary to keep track of which user has
     authored which part of the text.

You need to include all of these source files on a page that uses jinfinote.
Alternatively, you can use the supplied merge.cmd script to concatenate them
into a single JavaScript file for easier handling.

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

sveith/jinfinote

JavaScript implementation of the Infinote protocol for collaborative editing

JavaScript

113

0 commits

updated Mar 20, 2011

See the code

README

jinfinote is a JavaScript implementation of the Infinote protocol, an open
standard for software supporting collaborative real-time editing of text
files.

The goal of this project is to aid in creating a collaborative real-time editor
for the web, similar to EtherPad. Desktop editors such as Gobby are already
available for many platforms, and the intention is to close the missing link to
the web browser.

jinfinote is split into four JavaScript files:

 * algorithm/operations.js
     Contains the basic text operations (Insert, Delete, Split and NoOp) and
     their transformations.
 * algorithm/request.js
     Defines do, undo and redo requests and methods to change them (transform,
     fold, mirror etc.).
 * algorithm/state.js
     Contains the State and Vector classes, which are the central classes of
     jinfinote.
 * algorithm/text.js
     Implements the Buffer class, among others, which enables string operations
     on segmented texts. This is necessary to keep track of which user has
     authored which part of the text.

You need to include all of these source files on a page that uses jinfinote.
Alternatively, you can use the supplied merge.cmd script to concatenate them
into a single JavaScript file for easier handling.

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

Languages

JavaScript

83.0%

Python

16.9%