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.
A decent run down of it's features can be found in the usage notes.
Demonstration version
http://harmony.biowiki.org/xrei/
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
AddHandler cgi-script .cgi .pl
SetEnv PERL5LIB /usr/local/biowiki/dart/perl
SetEnv 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
Some older, sketchy notes on installation, configuration and extension can be found here.
Papers
History
xREI development began during the 2007 Google Summer of Code, sponsored by NESCent. The original SoC ideas page can be found here.
-- LarsBarquist - 29 Feb 2008 |