Software Architecture

architettura

Muruca: is build over a LAMP stack and composed by several modules.

The BACKEND module is implemented over the LAMP stack (Linux Apache MySql PHP). The Symfony framework (http://symfony.com) is used for the data layer authentication and for the management of the entities present on the platform.

The BE module has to be considered as the main access point for the publication of texts and images and allows the creation, modification and publication of a letter and its metadata. The backend module interacts with the MySQL database using the Doctrine framework that provides a level of abstraction with respect of the data storage technology.

 

SOLR search engine

All metadata entered via BE module are processed and indexed on the SOLR search engine with the aim of making faster and customizable the searches made on the platform.

The update of the SOLR index is “real time” (eg. Modifying the metadata in the Backend Module).

 

EVT – Module

EVT (short for Visualization Technology Edition) is a software for the creation and navigation of digital editions of manuscripts based on text encoded according to the XML standard TEI (http://www.teic.org).

EVT software has been integrated within Muruca and is based on web technologies and open standards like HTML, CSS and Javascript, to make sure that it works on all the latest web browsers and the web as long as possible.

 

Muruca Frontend

The frontend module is composed of an application realized with the framework AngularJS. The application interacts with modules that implement business Logic through an API layer. In the architecture of the system there are two different API Endpoint  exposed by the search engine and the backend module.

 

Korbo

Korbo is a vocabulary manager  composed by a Symfony2 application, a SOLR index, a raw PHP application ( FEED ) and a Pundit client. The main aim of Korbo is to store the entities recognized by scholars and make them available through a public communication interface.

Annotation Server

is composed by a Java application and a Sesame Triple store hosted into a Tomcat container. Is the place where all the annotations made by the scholars are stored. It represents the Pundit data storage interface.