Hyrax: A Digital Repository Framework
Table of Contents
- What is Hyrax?
- Feature Documentation
- Support Policies
- Working with Hyrax
What is Hyrax?
Note: As a Rails Engine, Hyrax is not a web application. To build your digital repository using Hyrax you must mount the Hyrax engine within a Rails application. We call an application that mounts Hyrax a "Hyrax-based application" (or sometimes a "Hyrax Application").
Hyrax offers the ability to:
- Create repository object types on demand
- Deposit content via multiple configurable workflows
- Describe content with flexible metadata
- Enable/disable optional features via an administrative dashboard
- And more (https://hyrax.samvera.org/about/)
- List of features: Feature Matrix
- Configuration and enabling features: Hyrax Management Guide
- Walk-through on using features: Hyrax Feature Guides
- Entity Relationship Diagram
- For general information about Hyrax: Hyrax Site
- A note about versions of Hyrax
- Hyrax 3.x supports the latest browser versions for Chrome, Firefox, Edge, and Safari.
The Samvera community is here to help. Please see our support guide.
Working with Hyrax
There are two primary Hyrax development concerns:
- Developing the Hyrax engine
- Developing your Hyrax-based Application
Developing the Hyrax Engine
This is where you work on the code-base that will be used by yours and other Hyrax-based applications. We recommend using Docker and Hyrax's engine development containers.
We'd love to accept your contributions. Please see our guide to contributing to Hyrax.
Here are possible ways to help:
- The Hyrax user interface is translated into a number of languages, and many of these translations come from Google Translate. If you are a native or fluent speaker of a non-English language, your help improving these translations are most welcome. (Hyrax currently supports English, Spanish, Chinese, Italian, German, French, and Portuguese.)
- Do you see English in the application where you would expect to see one of the languages above? If so, file an issue and suggest a translation, please.
- Contribute a user story.
- Help us improve Hyrax's test coverage or documentation coverage.
- Refactor away code smells.
See the release management process.
Developing your Hyrax-based Application
For those familiar with Rails, this is where you create your own application (via
rails new) and add Hyrax as a gem to your
Gemfile. Your Hyrax-based application is the place for you to create features specific to your Hyrax-based application.
For more information, see our documentation on developing your Hyrax-based application.
Deploying your Hyrax-based Application to production
Steps to deploy a Hyrax-based application to production will vary depending on your particular ecosystem but here are some methods and things to consider:
- Samvera Community Knowledge Base: Running in Production
- Helm Chart (for cloud-based Kubernetes-style deployments)
This software has been developed by and is brought to you by the Samvera community. Learn more at the Samvera website.
Hyrax is available under the Apache 2.0 license.