/
mod-search
  • In progress
  • mod-search

    Overview

    • Description: The mod-search module for FOLIO provides search capabilities across multiple types of resources within the FOLIO Library Services Platform.

    • Key Features:

      • Supports searching for Instance and Authority records.

      • Integration with Elasticsearch/OpenSearch for advanced search capabilities.

      • Configurable indexing and search settings.

      • API endpoints for search functionalities.

      • Consortium support:

        • special endpoints to provide consolidated documents.

        • searching through consortium tenants.

    Table of Contents

     

    Introduction

    Background

    The mod-search module is an integral part of the FOLIO Library Services Platform, designed to facilitate advanced search functionalities across various resource types. It leverages Elasticsearch/OpenSearch to provide efficient and scalable search solutions.

    Objectives

    • Enable robust and efficient search capabilities within the FOLIO platform.

    • Provide a flexible and configurable search solution that meets diverse library needs.

    Features

    TBD

    Features

    Usage

    API Documentation

    Refer to the API documentation for detailed information on available endpoints, request parameters, and response formats.

    User Guides

    • Search Requests: How to perform search requests using the API. TBD

    • Index Management: Instructions on managing indexes, including creation and deletion. TBD

    Error Handling and Troubleshooting

    TBD

    Architecture and Design

    System Architecture

    The mod-search module is built on a microservices architecture and integrates with other FOLIO modules and Elasticsearch.

    Diagrams: TBD

    Module Design

    • Core Components: Indexing service, search service, and configuration service.

    • Technologies: Java, Spring Boot, Elasticsearch, PostgreSQL, Kafka.

    Dependencies

    • FOLIO modules: Okapi, mod-inventory-storage, mod-entities-links

    • External: Elasticsearch, PostgreSQL, Kafka

    Testing

    Unit Tests

    Unit tests are included in the src/test directory and can be run using Maven:

    mvn test

    System Tests

    Integration tests are provided to validate interactions with other FOLIO modules and Elasticsearch.

    Manual Testing

    • Perform manual searches through the API to verify functionality.

    • Validate indexing operations.

    Appendices

    Glossary

    • Search Engine: Elasticsearch or OpenSearch.

    • Index: A collection of documents in a search engine.

    • Document: A basic unit of information in a search engine.

    References

    Change Log

    See the NEWS.md file in the repository for a history of changes.

    Related content