Technology in more detail


The information on these pages has been superseded by the content on Technical Framework and its Parts and the Technology tab of the projectHydra.org web site, as of March 2011. Please update links accordingly.


The primary components of the Hydra technical framework are:

  • Fedora, providing a robust, durable repository layer for persisting and managing digital objects. Fedora's disseminator features allow us to place an abstraction layer between it and our Hydra heads, shielding an institution's applications from any future changes to the repository structure.
  • ActiveFedora, providing a Ruby gem for creating and managing objects in Fedora, (developed by MediaShelf, LLC)
  • Solr indexes, providing fast access to information about the institution's resources. Solr can be used as a lingua franca: content from any source that can generate a Solr index (perhaps an OPAC, or repository metadata records with different schema) can potentially be brought into a Hydra discovery environment.
  • Blacklight plugin, a Ruby on Rails library that provides faceted searching, browsing and tailored views on objects
  • Hydra plugin, a Ruby on Rails library that works with ActiveFedora to provide create, update and delete actions against objects in the repository
  • solrizer, a component that automatically indexes Fedora data streams on demand, per the model declared in OM and ActiveFedora
  • Opinionated Metadata, or OM,
  • A suite of web-based services, supporting granular actions against content to support their management, access and preservation (e.g., checksumming, indexing, transform MARC to MODS, djatoka-based JPEG2000 image streaming)
  • Hydrangea, a web application that bundles all the Ruby on Rails components and hooks to web services into a single package, with a library of screen widgets and user interactions to support various content management actions (e.g., upload file, edit metadata, change permissions)

Taken altogether, these technical components support the following five primitive functions:

  • Deposit - uploading simple or multi-part objects, singly or in bulk
  • Manage - editing and updating an object's content, metadata and permissions
  • Search - full-text and fielded search supporting user discovery as well as administration
  • Browse - sequential viewing of objects by collection, attribute or ad hoc filtering
  • Deliver - viewing, downloading and otherwise disseminating objects through Hydra applications, web services and third party applications

Finally, these components rely on several background services:

  • authorization, provided by FESL (Fedora Enhanced Security Layer - a new Fedora framework service part funded by the Hydra partners and others in the community)
  • authentication, provided by local institutional systems
  • workflow, which can either be provided as a bundled part of the Hydra framework, or provided by a local institutional systems