Manakin Architecture: Understanding Modularity in Manakin
Manakin is the second release of the DSpace XML UI project. Manakin introduces a modular interface layer, enabling an institution to easily customize DSpace according to the specific needs of a particular repository, community, or collection. Manakin’s modular architecture enables developers to add new features to the system without affecting existing functionality. This presentation will introduce Manakin’s modular architecture from a technical perspective, with an emphasis on extending Manakin’s feature set to meet local needs. First the project’s goals will be introduced, followed by a discussion of Manakin’s relationship with DSpace. Next an architectural overview of the primary components will be given: • DRI: The Digital Repository Interface (DRI) is an XML schema defining a language that allows aspects and themes to communicate. Manakin uses DRI as the abstraction layer between the repository’s business logic and presentation. The schema is adapted for digital repositories through the use of embedded METS-based metadata packages. • Aspects: Manakin aspects are components that provide features for the digital repository. These modular components can be added, removed, or replaced through simple configuration changes, enabling Manakin’s features to be extended to meet the needs of specific repositories. Aspects are linked together forming an “aspect chain”. This chain defines the set of features of a particular repository. • Themes: Manakin themes stylize the look-and-feel of the repository, community, or collection. The modular characteristics of themes enable them to encapsulate all the resources necessary to create a unique look-and-feel into one package. Themes may be configured to apply to a range of objects, from an entire repository down to a single page. Finally the presentation will close with a walkthrough of the Manakin architecture detailing how these components work together to form the Manakin framework.