Digital Archive Software

Digital Archive Software

The Digital Archive is a web application built from a combination of free open-source software, free commercial software, and custom software developed for the Southwest Harbor Public Library (SWHPL). The software implements the Archive Relational Model. The purpose of this page is to share our work with other organizations who may be interested in creating a Digital Archive of their own.

The primary components of the Digital Archive are:

  • Omeka
  • Omeka theme
  • Omeka plugins
  • JavaScript libraries
  • WordPress

The sections that follow describe the components listed above. If you have technology related questions, feel free to contact George Soules by sending email to For questions about Digital Archive content, please contact curator Charlotte R. Morrill via the Contact page.


Omeka (pronounced oh-may-ka) is a Swahili word meaning to display or lay out wares; to speak out; to spread out; to unpack. Omeka is a free, flexible, and open-source web-publishing platform for the display of library, museum, archives, and scholarly collections and exhibitions. Omeka was designed with non-IT specialists in mind, allowing users to focus on content and interpretation rather than programming. To learn more, visit

Omeka is quick to install and easy to get started with. It stores your data in MySQL which is an open-source relational database management system. The Digital Archive uses MariaDB which is a community-developed fork of MySQL intended to remain free under the GNU GPL free software license since MySQL was acquired by Oracle Corporation.

Note that Omeka uses the term “item” to refer to a record or entry in its database. Each item represents one entity such as a person, a place, or a thing. An item contains information called metadata that describes the entity. An item can also have an attachment, like a photograph or a PDF file, to supplement the metadata.

Strengths and Weaknesses

Omeka is powerful, easy to use, and free; however, it’s core feature set is too basic to adequately present items in the Archive which are highly relational in nature. Interestingly, popular software solutions, including Omeka, which are commonly used by museums and historical societies, provide few features for establishing and presenting the relationships among items in the database. Consequently, they can’t offer enticing features to help users easily see and discover related items. Furthermore, their presentation of search results tends to be minimal.

Fortunately, Omeka can be extended in two powerful ways. First, because it is open-source, a programmer can change the software to suit the needs of his or her organization. Second, and a better approach than changing the Omeka software itself, is that programmers can create what are known as “plugins” to extend the capabilities of Omeka. In contrast, proprietary “closed-source” software cannot be modified or extended by those who purchase it.

Omeka S

Before moving on to the discussion of Omeka themes and plugins, note that the Digital Archive uses what is now known as Omeka Classic, a term coined by Omeka to distinguish the original Omeka software from a new product called Omeka S which is under development and available as beta software. Omeka S addresses some of the shortcomings of Omeka Classic, but still does not provide the capabilities needed for the Digital Archive. We will continue to monitor progress of Omeka S development to see if it becomes a better base platform for the Digital Archive.

Omeka Theme

A theme allows you to customize the look and feel of the public-facing interface of an Omeka website. Like plugins, themes allow an organization to both extend Omeka’s functionality and control the appearance of the website. Omeka comes with a number of themes that you can use as-is or modify.

SWHPL developed its own theme for the Digital Archive to provide:

You can download source code for the SWHPL theme at GitHub to use in your own project.

Omeka Plugins

A plugin is a software component that adds features to an existing computer program. Omeka’s rich support for plugins allows a programmer to extend or change Omeka’s features without editing the core Omeka source code. By using plugins, an organization can upgrade to future releases of Omeka Classic without having to reincorporate its custom logic into core source code.

Following is a summary of the plugins that SWHPL developed for the Digital Archive. Other plugins used by the Digital Archive are listed later on this page.

AvantCommon Plugin

The AvantCommon plugin provides common support required by the AvantElements, AvantRelationships, and AvantSearch  plugins. It provides no standalone features, but  must be installed to use any of the plugins that require it.

You can download AvantCommon at GitHub for use in your own project.

AvantCustom Plugin

The AvantCustom plugin provides the following:

The Lightbox feature displays a small green magnifying glass icon above item thumbnails. Clicking the icon lets you view large versions of every image on the page.

You can download source code for AvantCustom at GitHub to use in your own project.

AvantElements Plugin

The AvantElements plugin adds data entry and validation features to the Omeka admin interface. These features help ensure data integrity and make data entry easier for archivists. The plugin provides the following:

  • Auto creation of Identifier value when adding a new item.
  • Identifier validation to ensure that the Identifier is unique.
  • Bolder error messages.
  • Clone item feature.
  • Data validation for specific elements.
  • Detection of carriage returns, leading/trailing spaces, and en/em dashes where prohibited.
  • Date format validation.
  • Control of element display order and mixing of Dublin Core and non Dublin Core elements.
  • Control of field widths.
  • Auto creation of links to other items having the same element value as the displayed item.
  • Option to hide the HTML checkbox on any element.
  • Option to hide the Add Input button on any element.
  • Option to make an element required.
  • Suggestion feature for Creator and Publisher fields.
  • Automatic update of Creator and Publisher fields when a corresponding Title field is modified.

You can download source code for AvantElements at GitHub to use in your own project.

AvantRelationships Plugin

Adds functionality for creating and visually displaying real-word relationships. To learn about the features this plugin provides for both end users and archivists, see the Digital Archive documentation for Relationships.

You can download AvantRelationships at GitHub for use in your own project.

AvantSearch Plugin

Provides extended search results capabilities for the public interface. To see what features this plugin provides, see Digital Archive documentation for Searching the Digital Archive.

You can download source code for AvantSearch at GitHub to use in your own project.


The Digital Archive is actually two websites. One is Omeka and the other is WordPress, a free and open-source content management system.

The page you are reading right now, and other informational pages like it, come from WordPress. Actual data like photographs, maps, and documents, comes from Omeka. You can tell which is which by looking at the URL for any page. The Omeka page URLs always begin with The WordPress page URLs begin with followed by the name of the main menu item e.g. Here’s another easy way to tell the difference: only the WordPress pages have a search box in the footer. It’s used to search WordPress page content whereas the search box in the header is used to search the Archive.

Using two separate websites best leverages the strengths of the Omeka and WordPress technologies. While Omeka excels at presenting content from a database, it has minimal featrures for creating rich and attractive web pages. Conversely, WordPress has powerful web page creation features, but does not provide database capabilities. By using both technologies, Digital Archive users experience the best possible presentation of information and data, and Digital Archive administrators are able to maintain the web pages and the database using the most appropriate tools for the job.

The above notwithstanding, if you are just creating your own Digital Archive and want to focus your efforts on getting your database online, you can get by with Omeka alone. It’s Simple Pages plugin allows you to create basic web pages for your Omeka website without using another technology like WordPress.

JavaScript Libraries

JavaScript is a programming language used to make web pages interactive. Alongside HTML and CSS, it is one of the three core technologies used to create web applications. A JavaScript library provides functionality that can be used to extend a web application, similar to the way a plugin can be used to extend Omeka. Two of the most notable libraries that the Digital Archive benefits from are described below.


Cytoscape.js is an open-source graph theory library that displays rich, interactive graphics. The Digital Archive uses it to create the visualization graphs that display relationships between the item being viewed and other related items. Each time you view an item in the Digital Archive, the AvantRelationships plugin dynamically generates JavaScript arrays containing definitions of the nodes and edges to be displayed in the graph. Cytoscape interprets the data and displays the visualization.

The layout of graph elements is controlled by Cytoscape extensions. The Dagre layout organizes the graph using a DAG (directed acyclic graph) system. The CoSE Bilkent layout is explained in a paper by U. Dogrusoz, E. Giral, A. Cetintas, A. Civril, and E. Demir, “A Layout Algorithm For Undirected Compound Graphs“, Information Sciences, 179, pp. 980-994, 2009. The AvantRelationships plugin also uses the Concentric layout that is included with Cytoscape. The plugin displays the graph using the Magnific Popup JavaScript library.


OpenSeadragon is an open-source, web-based viewer for high-resolution zoomable images, implemented in pure JavaScript, for desktop and mobile applications. To be viewed using OpenSeadragon, a large image must be processed into tiles at different scales or tiers. Beginning at a 100% scale, the image is successively scaled in half to produce each tier, until both the width and height of the final tier are at most 256 pixels each. Each tier is further divided into tiles that are at most 256 pixels wide by 256 pixels tall.

SWHPL archivists use a Windows desktop program called Zoomify to create the tiles for zoomable images. Running the program is a manual step that an archivist must take to create the tiles for an image in the Archive. Once created, the archivist uploads the tiles to the Digital Archive server. When a user views an item, the AvantCustom plugin automatically detects if tiles exist for it, and if so, invokes OpenSeadragon to display them.

Software Components Used By the Digital Archive

The Digital Archive utilizes the following software components (listed by category in alphabetical order). Most are freely available to any organization that wants to use or modify them, but please read the license for each one.


The Digital Archive website and database reside at Reclaim Hosting, providers of web hosting to educators and institutions.


The Digital Archive was designed and developed for the Southwest Harbor Public Library by George Soules and Janice Kenyon. Technology funding was provided by the John S. and James L. Knight Foundation with in-kind software engineering services provided by AvantLogic Corporation.

Comments are closed