Hyku: A multi-tenant Hyrax application built on the latest and greatest Samvera community components. Brought to you by the Hydra-in-a-Box project partners and IMLS.
Clone or download
Permalink
Failed to load latest commit information.
.ebextensions Fixes honeybadger deployment notification Sep 28, 2017
.github Update GitHub support documents Sep 26, 2017
app Merge pull request #1302 from samvera-labs/non_iiif_thumbnail Oct 10, 2018
bin Merge pull request #1314 from samvera-labs/graphviz Mar 29, 2018
config Run automatic translations Oct 16, 2018
db Hyrax 2.1 upgrade (#1529) Jul 26, 2018
lib update to hyrax 2.2 (#1543) Oct 4, 2018
public Stop loading one copy of jquery 1. Jul 7, 2017
solr/config Hyrax 2.1 upgrade (#1529) Jul 26, 2018
spec Merge pull request #1302 from samvera-labs/non_iiif_thumbnail Oct 10, 2018
vendor/assets Use the flot source from the flot-rails gem Jun 7, 2016
.coveralls.yml Add .coveralls.yml Mar 28, 2016
.fcrepo_wrapper Generate sufia using the installer Mar 28, 2016
.gitignore Ignore postgres artifacts Jan 24, 2017
.hound.yml Hounds do not bark at rubies Jun 2, 2017
.rspec Require rails_helper in one place instead of 100 Feb 14, 2017
.rubocop.yml Upgrade Hyrax to 2.0.2 and upgrade gems with security vulnerabilities ( Mar 22, 2018
.rubocop_todo.yml Coerce UploadedFile to an array and use upstream Job Jul 11, 2018
.scss-lint.yml Allow BEM-style class names in CSS selectors Jan 24, 2017
.solr_wrapper Rename Lerna to Hyku. Fixes #461 Nov 7, 2016
.travis.yml Switch from Poltergeist to headless Chrome Mar 27, 2018
CONTRIBUTING.md Updating CONTRIBUTING.md as per Hydra v11.0.0 Jan 31, 2017
Dockerfile environment variable pointing to fits dependency Mar 28, 2018
Gemfile Update iiif_manifest to 0.5.0 (#1553) Oct 20, 2018
Gemfile.lock Update iiif_manifest to 0.5.0 (#1553) Oct 20, 2018
LICENSE Fill in Apache license; fixes #3 Apr 11, 2016
README.md Use shields.io to fix waffle badge. (#1522) Jun 28, 2018
Rakefile Use with_server from active-fedora Oct 7, 2016
config.ru Generate an initial rails application Mar 28, 2016
docker-compose.yml Hyrax 2.1 upgrade (#1529) Jul 26, 2018

README.md

Build Status Coverage Status Stories in Ready

Hyku, the Hydra-in-a-Box Repository Application

Product Owner: Hydra-in-a-Box Project (DPLA, DuraSpace, and Stanford University)

Running the stack

For development

solr_wrapper
fcrepo_wrapper
postgres -D ./db/postgres
redis-server /usr/local/etc/redis.conf
bin/setup
DISABLE_REDIS_CLUSTER=true bundle exec sidekiq
DISABLE_REDIS_CLUSTER=true bundle exec rails server -b 0.0.0.0

For testing

See the Hyku Development Guide for how to run tests.

Working with Translations

You can log all of the I18n lookups to the Rails logger by setting the I18N_DEBUG environment variable to true. This will add a lot of chatter to the Rails logger (but can be very helpful to zero in on what I18n key you should or could use).

$ I18N_DEBUG=true bin/rails server

On AWS

AWS CloudFormation templates for the Hyku stack are available in a separate repository:

https://github.com/hybox/aws

With Docker

We distribute a docker-compose.yml configuration for running the Hyku stack and application using docker. Once you have docker installed and running, launch the stack using e.g.:

docker-compose up -d

With Vagrant

The samvera-vagrant project provides another simple way to get started "kicking the tires" of Hyku (and Hyrax), making it easy and quick to spin up Hyku. (Note that this is not for production or production-like installations.) It requires VirtualBox and Vagrant.

Switching accounts

The recommend way to switch your current session from one account to another is by doing:

AccountElevator.switch!('repo.example.com')

Development Dependencies

Postgres

Hydra-in-a-Box supports multitenancy using the apartment gem. apartment works best with a postgres database.

Importing

from CSV:

./bin/import_from_csv localhost spec/fixtures/csv/gse_metadata.csv ../hyku-objects

from purl:

./bin/import_from_purl ../hyku-objects bc390xk2647 bc402fk6835 bc483gc9313