Technical

The Letters of 1916 website comprises multiple pieces of software implemented in a complex yet fluid manner. The following are the software packages used in the production of the Letters of 1916:

  • WordPress (v 4.1.4) – the primary web interface and initial landing page of the project.  This hosts the blog for the website, and is the primary interface for communication.
  • Omeka (v 1.5.3) – utilised to provide assistance with the transcription of the letters objects.  Also provides general workflow.
  • Scripto (v 1.3.1) – an Omeka plugin utilised during the transcription process.  This software package, paired with wikimedia, houses the physical transcriptions of each letter object and also provides assistance with encoding of the text in TEI.
  • Ruby on Rails (v 3.2.13) – a custom built application produced by The Trinity Centre for High Performance Computing.  This package allows users to upload letters into Omeka.
  • Python tools to build TEI-XML documents from the raw Omeka data dump (https://github.com/oculardexterity/Letters-Processing)
  • LetEd (v .12.09.3) – a custom built application  (in Python) by Richard Hadden, a team member of Letters 1916, and a DiXIT Fellow for editors to proofread and enhance the markup of user-encoded letters.
  • Discovery Tool (v 1.0.0) – a custom built application (leveraging the Mono Webforms framework) by Shane A. McGarry, a team member of the Letters of 1916 and a PhD candidate in Digital Humanities, this tool allows users to explore the collection via search and browse mechanisms, as well as view the content of the letters and each letter’s associated imagery.
  • Admin Tool (v 1.0.0) – a custom built application (leveraging the Mono MVC framework) also built by Shane A. McGarry, this tool allows members of the Letters of 1916 team to administer various aspects of the letters (such as maintaining custom lists, adding / removing letters, parsing TEI, and various backend management tasks).

 

In addition to the software packages listed above, there are a number of other server related software packages that provide additional product support (i.e. database server, web server, etc.).  These packages are:

  • Apache (v 2.2.15) – web server software package
  • PHP (v 5.3.3)  – used to serve up .php pages
  • Passenger (v 4.0.10) – web server software used to host Ruby on Rails application
  • MySQL (v 1.3.1) – database server.  There is one single MySQL database for all of the above mentioned software packages.  The data for each is not segregated into separate catalogues.
  • MediaWiki (v 1.21.1) – database server (of sorts) integrated with MySQL.  Used strictly by Scripto to store transcriptions.
  • Mono (v .4.2.2) – application development framework. This framework is used to provide the underlying implementation of the Discovery tool as well as the Admin tool.

The process from uploading a letter to displaying it in the Explore section is completed in two phases. A diagram of the first phase may be found below:

In the second phase, the data from the MySQL server is processed through our custom LetEd application to generate valid TEI. The process is described in the diagram below:

The two phases combined takes us all the way from uploading a letter to displaying it on our Explore page. You are always welcome to talk to the Letters of 1916 team if you want to learn more about the technical side of this project!