JuxtaCommons

Synopsis
The Juxta family of software (Juxta, Juxta WS, and Juxta Commons) allows you to compare and collate versions of the same textual work. Juxta Commons is an online space powered by the Juxta Web Service that lets you collate sets and share visualizations with your peers. Development of Juxta Commons was sponsored by NINES.

Features
With a free account, users may upload two or more versions of a text, collate them, then view and share visualizations of the collation results. Visualizations can be kept private or shared online with a unique URL or embeddable iframe.

A collation can also be exported as TEI with parallel segmented markup or as a base text with apparatus.

Juxta Commons accepts upload of a variety of file formats with textual content: plain text, XML (with special handling for TEI), HTML, Microsoft Word (.doc and .docx), OpenOffice (.doc), RTF, PDF, ePUB, WikiMedia markup (with special handling for Wikipedia article revisions). Text will be scraped out of the files; images are not collated.

User commentary
Please sign all comments.

System requirements
Juxta Commons is a web-based application. It has been tested on Chrome v. 25, Firefox v. 18 and v. 19, Internet Explorer 8 and 9, and Safari v. 6.

Source code and licensing
As of this writing (March 2013), Juxta Commons is closed source. Juxta Commons is powered by the Juxta Web Service, which is open source software available on GitHub.

Support for TEI
Juxta Commons supports TEI in several ways:

Juxta Commons accepts all types of XML files for upload and has basic defaults for working with TEI. Juxta Commons uses XSL transformations to prepare XML files as witnesses, filtering out the XML tags to produce a clean text for comparison. There is a default filter for TEI encoded texts which also excludes the contents of the TEI header and front matter; this filter can be customized to include or exclude the contents of any given tags. The default or custom filter may be viewed and exported as XSLT. The note and page break (pb) tags receive special handling, and are used to display the note contents and the location of page breaks in one of the collation visualizations.

When uploading an XML source file, the user has the opportunity to flag it as containing TEI parallel segmentation markup. If this flag is set, Juxta will automatically extract all variant witnesses from the parallel segmentation apparatus and create a comparison set showing the differences between them.

Juxta Commons can also export any comparison set in TEI parallel segmentation markup, regardless of the original format of the source files. It should be noted that the parallel segmentation export is constructed from the stripped-down witness texts; TEI markup from the original source files will not be reproduced in the parallel segmentation export.

The Versioning Machine has been integrated into Juxta Commons as an alternative visualization; when the user opts to view the Versioning Machine visualization of a comparison set, Juxta Commons automatically exports its TEI parallel segmentation markup to the Juxta Commons installation of the Versioning Machine.

Language(s)
Juxta Commons is a Ruby on Rails application that provides the user interface and authentication features of the system. It has no collation logic in itself, but is powered by the Juxta Web Service (Juxta WS), with which it communicates by exchanging JSON data over RESTful API calls. Juxta Commons relies heavily upon jQuery, jQuery UI and Raphael to drive the user interface.

Juxta WS is a server-side Java application that exposes a RESTful API to the collation services. It was built upon standard open source frameworks such as Spring and Restlet. It uses XSLT to transform XML source files into witnesses.

The user interface and documentation for Juxta Commons are written entirely in (American) English. Juxta supports collation of texts in any Unicode character set, with the exception of UTF-8 compound characters such as those used in Tibetan and Chinese scripts.

Documentation
An extensive user guide is available on the Juxta Commons site, along with technical information and a gallery of interesting comparison sets.

Video tutorials are available on Vimeo including a basic walkthrough of the software and a video demonstrating the features specifically designed to support work with texts encoded in XML.

Tech support
There is an open Google Group dedicated to discussing development issues for the Juxta family of software (the original Juxta desktop application, Juxta WS, and Juxta Commons).

User community
Users are invited to tweet about their experiences with Juxta Commons using the hash tag #juxtacommons. News about Juxta Commons is publicized in the @JuxtaCommons Twitter feed and on the Juxta Software blog.

Sample implementations
Links to numerous sample sets have been collected in a blog entry on juxtasoftware.org.

Current version number and date of release
Current version number: 1.7.9 Date of release: March 2013

History of versions
Juxta was originally developed in the early 2000s as a desktop application.

In March of 2012, a beta version of Juxta (1.6.5) was released. This version of the desktop software allowed users to export comparison sets for visualization on the web. The desktop software was most recently released in October 2012 as version 1.7.0; it is available for download from juxtasoftware.org.

In October of 2012, the public beta release of the Juxta Commons website was launched as version 1.7.5.

How to download or buy
Juxta Commons is a free service available on the web. Anyone may sign up for a user account. You do not need to download or purchase the software.