ReactiveSearch Documentation

repository·next·Indexed 26 days ago

https://github.com/appbaseio/reactivesearch

A UI components library for React, Vue, and React Native that simplifies building search interfaces for Elasticsearch, OpenSearch, Solr, and MongoDB. It provides sensor components for filtering (Lists, Ranges, Search boxes) and actuator components for displaying results (ResultCards, ResultLists, Charts, and Maps). The ecosystem includes specialized packages such as @appbaseio/reactivesearch, @appbaseio/reactivesearch-vue, @appbaseio/reactivesearch-native, and @appbaseio/reactivemaps.

Tokens
13.1K
Snippets
25
Records
95
Agent score
88%

What's inside ReactiveSearch

  1. Introduction to ReactiveMaps

    next

    ReactiveMaps provides Elasticsearch UI components for building data-driven Map UIs. It connects Google Maps components with your Elasticsearch cluster and enables communication with other reactive components.

    Key features include:

    • Dynamic evaluation of map centers as the map updates.
    • Ability to search on the map as it is moved.
    • Integration with streaming enhancements for building real-time map applications.
  2. Overview of ReactiveSearch Native

    next
    ReactiveSearch Native provides Elasticsearch UI components specifically for React Native. It allows developers to build data-driven mobile apps for iOS and Android by connecting directly to an Elasticsearch backend or an Appbase.io service using a ReactiveBase backend provider component. The components are built with primitives from NativeBase.io and support full theming and accessibility.
  3. Overview of ReactiveSearch

    next

    ReactiveSearch is a UI components library for React and Vue designed to work with Elasticsearch, OpenSearch, Solr, and MongoDB. It provides over 20 UI components including Lists, Ranges, Search UIs, Result displays, AI Answers, and Charts.

    Key components include:

    • Sensors: Components like SingleList, RangeSlider, and SearchBox that apply filters or search queries based on user interaction.
    • Result Displays: Components that render the matching hits, such as ReactiveList (list/card formats), ReactiveMap (Google Maps or OpenStreetMaps), AIAnswer (RAG via OpenAI), and ReactiveChart (Apache E-Charts).

    Components can be configured to react to one another using the react prop.

  4. Understand ReactiveSearch core concepts

    next

    ReactiveSearch is built around two primary types of components:

    1. Sensor components: Purpose-built components for applying specific filters to your data. For example, a SingleList component renders a list of radio UI elements based on the available dataset to filter results.

    2. Actuator components: Components that represent the resulting UI view.

      • ResultCard: Displays results in a card-based interface.
      • ResultList: Displays results in a list format.
      • Both ResultCard and ResultList include built-in support for pagination and infinite scroll.
      • ReactiveComponent and ReactiveList: Low-level actuators provided for highly customized rendering.
  5. Core Concepts of ReactiveMaps

    next

    ReactiveMaps relies on two main types of components:

    1. Map component: The ReactiveMap component is the primary data-driven map UI component used to build map-based experiences.
    2. Complimentary sensor components: In addition to standard ReactiveSearch sensor components, ReactiveMaps is compatible with:
      • GeoDistanceSlider
      • GeoDistanceDropdown
  6. Features of ReactiveMaps Native

    next

    ReactiveMaps Native provides several key capabilities for mobile developers:

    • Elasticsearch Integration: Works out of the box with an Elasticsearch index or appbase.io service.
    • Cross-platform: Components are designed for both iOS and Android.
    • Customization: Supports bringing your own design components and provides full theming support (built with primitives from NativeBase.io).
    • Real-time capabilities: Integrates streaming enhancements to allow for seamless real-time map applications.
    • Accessibility: Built with accessibility in mind.
  7. Explore ReactiveSearch Vue component categories

    next

    ReactiveSearch Vue components are organized into four main functional categories:

    • List based UI components: For displaying lists of items.
    • Range based UI components: For filtering data within specific ranges.
    • Search UI components: For text-based search input.
    • Result components: For displaying search results (e.g., ReactiveList).
  8. Run the ReactiveSearch Native example locally

    next

    To run the native example project on a physical device or emulator, follow these steps:

    1. Clone the repository and navigate to the packages/native/example directory.
    2. Install dependencies using yarn.
    3. Start the packager using yarn start.
    4. Use the Expo app to scan the provided QR code to load the application on your device.
    yarn
    yarn start