Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

JavaScript implementation of the Infinote protocol for collaborative editing

branch: master
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.
Something went wrong with that request. Please try again.