This application is an implementation of Blacklight but we're ingesting EADs (Encoded Archival Description) instead of Marc. Please make sure to familiarize yourself with the Blacklight Quickstart Guide for dependencies and background before getting started with Finding Aids.
The description of EAD in Solr proves to require more configuration so we use a more comprehensive Solr schema.xml. To get your environment working you'll need to generate a jetty-solr instance and then copy our custom schema.xml. We've generated some tasks to help you get started. You can follow the steps below to get your development environment ready:
- Java
- We are using Java 1.7.
- If you need to run multiple versions of Java on your machine, you might want to look at jEnv
- Start by cloning this repository locally:
~$ git clone git@github.com:NYULibraries/findingaids.git
~$ cd findingaids; bundle install
- Create your database and run your migrations:
~$ bundle exec rake db:create
~$ bundle exec rake db:migrate
~$ RAILS_ENV=test bundle exec rake db:migrate
- Generate and start a local solr that is Finding Aids ready with the SolWrapper gem:
~$ RAILS_ENV=test bundle exec solr_wrapper
You could run this in the background by appending &
but it's also useful to know when you're running which version of solr.
- Make sure all your tests are passing:
~$ bundle exec rake
- Kill the test solr if you're not currently using it and start up a development one:
~$ bundle exec solr_wrapper
- We're actively persisting the data in these test and development solr cores so if you need to purge the persisted data run the following:
~$ bundle exec solr_wrapper clean
- Load some test data in there:
~$ bundle exec rake ead_indexer:index EAD=spec/fixtures/fales/bytsura.xml
~$ bundle exec rake ead_indexer:index EAD=spec/fixtures/tamwag/PHOTOS.107-ead.xml
- And start up your local server:
~$ bundle exec rails server
- Visiting
http://localhost:3000
should present you with the development application.
-
Running the code in V1 (legacy) and V2 (FADESIGFINDINGAIDS_2022_MIGRATION) modes:
You can use theFINDINGAIDS_2022_MIGRATION
environment variable to control application behavior.
IfENV['FINDINGAIDS_2022_MIGRATION']
isnil
, then the application will operate in legacy mode.
IfENV['FINDINGAIDS_2022_MIGRATION']
is notnil
, then the application will operate in theFINDINGAIDS_2022_MIGRATION
mode. -
Adding a new archival repository
To add a new archival repository, e.g.,arabartarchive
, you need to update the following files:
a.) theconfig/repositories.yml
andconfig/repositories-findingaids_2022_migration.yml
files
b.) theconfig/locales/en.yml
file- The only required key/value pair for the new repository is
url
- The only required key/value pair for the new repository is