About Library Search

Library Search is the University of Michigan Library's discovery interface. Launched in July 2018, it is designed to provide a consistent user experience across the physical and electronic resources the library provides. The Everything view displays a few results matching a user's keyword search under separate panels for each of the five categories of information: Catalog, Articles, Databases, Online Journals, and Guides & More. Each of these categories has an in-depth view that enables users to drill down into those materials to find what best meets their needs.

Overview

Although the user interface is intentionally similar across search categories, it contains a variety of information sources where each kind of data are managed:

  • Catalog and Online Journals are managed in our Alma Library Management System and are exported to a Solr index
  • Databases and Guides & More are drawn from local web content management systems and are exported to a Solr index
  • Articles is managed through the Ex Libris Central Discovery Index through Primo VE's APIs
  • Catalog Browse (in development in spring 2022) enables call number, subject authority file, and author authority file browsing of the library's catalog.

For data sources other than Articles, metadata records are extracted from their source, transformed, and loaded into Solr indexes. The front end interacts with these search indexes through two interrelated sets of code:

  • Pride, which handles searches
  • Prejudice, which handles integrations with the campus directory for authentication and other services

Flexibility

Library Search is designed to separate the user experience from the particular system that provides or manages the data. This allowed us, in summer 2021, to switch library management systems and article discovery systems from Aleph and Summon to Alma and Primo with minimal need for changes to the user experience. This approach brings several other benefits, as well:

  • We are able to tune relevancy ranking of all the search categories (except Articles, which is provided by API via Primo) to meet our needs and make the user interface consistent across all the kinds of data we include (Catalog, Articles, Databases, web content, etc.).
  • We are able to display any/all MARC data (and to consolidate or remove fields/subfields) for Catalog records, with a goal toward providing users with the record data they need.
  • We are able to integrate delivery services for catalog materials at a much more granular level, offering different kinds of users different services, depending on the item type, circulation status, etc.
  • We are able to keep user identities private from vendors, at least until such time as the user goes to a full-text site and interacts with content there.

Management

Library Search's front- and back-end systems are managed by staff from the Design and Discovery, Automation, Indexing, and Metadata, and Digital Library Applications departments within the Library Information Technology division. All of the software we have developed is available in GitHub under open source licenses.

The overall Library Search service is stewarded by the Library Search Service Team, co-chaired by Karen Reiman-Sendi and Ken Varnum.

Code repositories

The various applications developed at the University of Michigan Library are available through the University Library's GitHub repository:

  • pride -- A JavaScript library for interfacing with the U-M Library search backend
  • prejudice -- A companion to pride
  • search -- A single-page web application that consolidates the library's multiple discovery interfaces into one
  • spectrum -- The backend for Search
  • catalog-browse -- The call number, author authority file, subject authority file application (under development as of April 2022)

More information

If you are curious to know more about Library Search, please contact Ken Varnum, Senior Program Manager and Discovery Strategist.