This module offers basic OpenSearch/Elasticsearch integration with minimal abstraction. It's designed for developers who want semi-direct communication with the search engine rather than working through higher-level APIs and plugins.
Basic functionality includes:
- Direct query execution via QueryInterface with simple
::toArray()method - Service-based API:
\Drupal::service(SearchApi::class)->search($query) - Basic content indexing system
- JSON search endpoint
- Drush commands for index management
Use this module only if you need direct control over OpenSearch queries and are comfortable handling low-level search implementation. The indexing functionality is basic compared to the more mature search solutions.
Post-Installation
After installation, configure your OpenSearch endpoint in settings.php or configuration. The module provides a service interface for executing queries programmatically. There's no administrative UI - all interaction happens through code or Drush commands.
Developers will need to (themselves):
- Implement QueryInterface for custom queries
- Use the search service in custom code
- Set up indexing for content types programmatically
- Configure the optional JSON search endpoint if needed
Recommended modules/libraries
Seriously, consider using these instead:
- Search API - Full-featured search framework
- Search API OpenSearch - OpenSearch backend for Search API