- The
main
branch is currently where we do new development for the upcoming 9.0 release. - The
8.x
series is on the release-8.x branch - The
7.x
series is on the release-7.x branch - The
6.x
series is on the release-6.x branch
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.
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
- Project Homepage
- Developer Documentation
- Quickstart Guide
- Testing and Developing Blacklight
- Issue Tracker
- Support
Blacklight assumes a modern browser with support for Baseline 2023. This means we explicitly do not support Internet Explorer.
- Ruby 3.1+
- Ruby on Rails 6.1+
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.
Code contributions are always welcome, instructions for contributing can be found at CONTRIBUTING.md.
You'll also want some information about how Blacklight expects Apache Solr to run, which you can find in Solr Configuration
The javascript includes some derivative combination files that are built at release time, that can be used by some javascript pipelines. The derivatives are placed at app/assets/javascripts/blacklight
, and files there should not be edited by hand.
When any of the javascript components in the gem are changed, you may have to rebuild these derivative files.
- Install npm
- run
bundle exec rake build:npm
(just runsnpm install
to download dependencies andnpm run prepare
to build the bundle)
You always need to release both the rubygem and npm package simultaneously. For more information, see wiki
Summary of technical steps:
- Make sure
./package.json
and./VERSION
files have correct and matching versions. - Release ruby gem with
bundle exec rake release
- Release npm package
- Build derivative products included in release with
bundle exec rake build:npm
- Publish with
npm publish
.
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