Skip to content

Automatically exported from code.google.com/p/annolex

License

Notifications You must be signed in to change notification settings

craigberry/annolex

Repository files navigation

AnnoLex is a collaborative data curation tool for textual data. Its
correction screen provides the ability to suggest corrections,
one word at a time, to a transcribed, lemmatized and morphosyntactically
tagged text or corpus. It's review screen allows the same or different
user to make a second pass through the corrections, approving or
rejecting them.

AnnoLex is built using the Django framework and stores its data in a
MySQL database.

Copyright (c) 2010, 2015 Craig A. Berry

Released under the Artistic License 2.0:
   http://www.perlfoundation.org/attachment/legal/artistic-2_0.txt

Prerequisites:

The Django framework 1.5 or later    http://www.djangoproject.org/
A MySQL database server              http://www.mysql.com/
MySQLdb Python interface to MySQL    http://mysql-python.sourceforge.net/
Apache web server                    http://www.apache.org/
WSGI web gateway interface           http://wsgi.org/wsgi/

In principle, almost any of these components except Django itself could
be swapped out without radical changes to the application.

Usage Summary:

Though it has been used successfully to produce tens of thousands of
corrections to the EEBO-TCP texts, the project is still rather bare bones.
There is no programmer-oriented documentation and no user documentation
except the About page.  There are no build procedures, Makefiles,  or
installers.  The basic steps to follow to run the application are:

1.) Install all the prerequisite software listed above.

2.) Create an 'annolex' database on your MySQL server, accessible by the
    'annolex' user.  The createdb.csh script in the top-level directory
    may help with this on Unix-like systems.

3.) Create a settings file called annolex/settings.py based on 
    annolex/settings.py.template.  Anything between '@@' symbols needs
    to be replaced with something local.

4.) Create the database schema with:
       cd annolex
       ./manage.py syncdb

5.) Populate the annolexapp_annolex and annolexapp_textlist tables with
    your data.  For now, the column names are the only indication of what
    goes in them, which should be sufficient in most cases.

6.) Modify files containing paths to reflect your local environment.  That
    should just be annolex/apache/django.wsgi.
    
7.) Deployment consists of moving all the files under annolex/ to an 
    appropriate place on your web server and configuring your server to
    see them.  The virtualhost.template in the top-level directory 
    contains an example Apache VirtualHost section.