Xrei Program

From Biowiki
Jump to: navigation, search

xREI

xREI (pron. "X-ray") is an AJAX web interface and visualization server for xrate and its grammar files.

Along with xrate's annotation and training functionality, it provides web access to grammar state diagrams and substitution matrix bubbleplots.


Downloading the source code

The xREI source code is available from our anonymous cvs, to download use:

cvs -z3 -d:ext:anonymous@cvs.biowiki.org:/usr/local/cvs co xrei
cvs -z3 -d:ext:anonymous@cvs.biowiki.org:/usr/local/cvs co xrei-scripts
xrei
contains the javascript and html interface files, while
xrei-scripts
contains the perl scripts which serve as xREI's backend.

Browsing the source code

Browse the source code repositories here:

Installation notes

The following notes are from experience configuring xREI under OS X and Debian Linux. ymmv under other OSes. These instructions presume that Apache2 and Perl5 are installed and functional on your system.

Dependencies

Before installing xREI, the following software packages should be installed, preferably via apt-get, rpm, macports or similar:

  • TeXLive 2007
    or equiv (note: the macports version under os x never worked for me, I recommend MacTeX)
  • ImageMagick
  • GraphViz
All executables should be installed within the root/default path, /usr/bin or /usr/local/bin are usually good choices under linux. By default, macports under OS X will require that you add /opt/local/bin to your path. xREI uses mpost, dvips, and latex from
TeX
, dot and neato from
GraphViz
and convert from
ImageMagick
.

In addition xREI will require the following perl modules be installed:

  • GraphViz
  • MIME::Base64
  • JSON::Any

xREI also requires DART.

Apache Configuration

Your sites-available/default or httpd.conf file should be modified to include a section that looks something like this:

<Directory "/var/www/xrei-scripts">
		Options +ExecCGI
		[[Add Handler]] cgi-script .cgi .pl
		[[Set Env]] PERL5LIB /usr/local/biowiki/dart/perl
		 [[Set Env]] MPINPUTS /usr/share/texmf-texlive/metapost/base
</Directory>

xREI Configuration

xREI expects xrei-scripts to live in
../xrei-scripts
by default, and for xrei.json to be in the same directory as
index.html
. These can both be modified in the
init
function in
index.html
.
xrei-vizrates.pl
expects a directory
/temp
under
xrei-scripts
it can write
PostScript
files to. This directory should be cleaned out regularly with a cronjob. Once a night to once a week should be frequent enough, depending on use.
xrei.json
xrei.json
defines the repositories that will be available to xREI, and is in a JSON format. An example configuration is included with xREI, including the directories containing xrate grammar files.

Other information

A quick tutorial on writing AJAX wrappers to Unix command-line tools can be found here: Dojo Perl Tutorial

Papers

History

xREI development began during the 2007 Google Summer of Code, sponsored by NESCent. The original
SoC
ideas page can be found here.

-- Lars Barquist - 29 Feb 2008