Blacklight

CI Workflow

Blacklight is an open source Solr user interface discovery platform. You can use Blacklight to enable searching and browsing of your collections. Blacklight uses the Apache Solr search engine to search full text and/or metadata. Blacklight has a highly configurable Ruby on Rails front-end. Blacklight was originally developed at the University of Virginia Library and is made public under an Apache 2.0 license.

Installation

Add Blacklight to your Gemfile:

gem "blacklight"

Run the install generator which will copy over some initial templates, migrations, routes, and configuration:

rails generate blacklight:install

Documentation, Information and Support

Browser Compatibility

Blacklight assumes a modern browser with support for Baseline 2023. This means we explicitly do not support Internet Explorer.

Dependencies

Blacklight aims to support the currently supported versions of Ruby and the supported versions of Ruby on Rails. We aim to keep our test configuration up to date with these supported versions.

Contributing Code

Code contributions are always welcome, instructions for contributing can be found at CONTRIBUTING.md.

Configuring Apache Solr

You'll also want some information about how Blacklight expects Apache Solr to run, which you can find in Solr Configuration

Building the javascript

The javascript is built by npm from sources in app/javascript into a bundle in app/assets/javascripts/blacklight/blacklight.js. This file should not be edited by hand as any changes would be overwritten. When any of the javascript components in the gem are changed, this bundle should be rebuild with the following steps:

  1. Install npm
  2. run npm install to download dependencies
  3. run npm run prepare to build the bundle
  4. run npm publish to push the javascript package to https://npmjs.org/package/blacklight-frontend

Using the javascript

Blacklight ships with Javascript that can be compiled either by Webpacker or by Sprockets. To use Webpacker see the directions at https://github.com/projectblacklight/blacklight/wiki/Using-Webpacker-to-compile-javascript-assets

If you prefer to use Sprockets, simply run the install generator, which will run the assets generator. For details see https://github.com/projectblacklight/blacklight/wiki/Using-Sprockets-to-compile-javascript-assets