PHPackages                             silverstripe/silverstripe-forager-elastic-enterprise - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. silverstripe/silverstripe-forager-elastic-enterprise

ActiveSilverstripe-vendormodule[Search &amp; Filtering](/categories/search)

silverstripe/silverstripe-forager-elastic-enterprise
====================================================

Elastic Enterprise Search Provider for Silverstripe Forager

1.1.0(11mo ago)02.3k↑50%1[2 PRs](https://github.com/silverstripeltd/silverstripe-forager-elastic-enterprise/pulls)BSD-3-ClausePHPPHP ^8.1CI passing

Since Jul 30Pushed 9mo ago7 watchersCompare

[ Source](https://github.com/silverstripeltd/silverstripe-forager-elastic-enterprise)[ Packagist](https://packagist.org/packages/silverstripe/silverstripe-forager-elastic-enterprise)[ RSS](/packages/silverstripe-silverstripe-forager-elastic-enterprise/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (7)Versions (6)Used By (0)

🧺 Silverstripe Forager &gt; [![](https://camo.githubusercontent.com/50f3c6826fb9790636d804a4968e426c3db633ad559e1e989b5768d9a6b0a6db/68747470733a2f2f7777772e656c61737469632e636f2f616e64726f69642d6368726f6d652d313932783139322e706e67)](https://camo.githubusercontent.com/50f3c6826fb9790636d804a4968e426c3db633ad559e1e989b5768d9a6b0a6db/68747470733a2f2f7777772e656c61737469632e636f2f616e64726f69642d6368726f6d652d313932783139322e706e67) Elastic Enterprise Search provider
====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================

[](#-silverstripe-forager---elastic-enterprise-search-provider)

Warning

Elastic Enterprise Search is now reaching End of Life. Elastic has announced that it will not be supported beyond version 8, and that maintenance support for version 8 will be halted on 15th January 2027. See

Keep in mind, the core Forager module was designed to be service agnostic - so, once you pick a new search provider, you just need to create a plugin module for Forager (if there isn't one already). Your application's search implementation shouldn't actually have to change.

Elasticsearch (which is the core technology that Enterprise Search was built on) will still be supported into the future, so that is definitely one option that you could look in to.

This module provides the ability to index content for an App Search engine using Elastic's [Enterprise Search PHP library](https://github.com/elastic/enterprise-search-php).

Elastic Enterprise Search provider for [Silverstripe Forager](https://github.com/silverstripeltd/silverstripe-forager).

This module **does not** provide any method for performing searches on your engines - we've added some [suggestions](#searching) though.

**Note:** App Search is one of the products included in Elastic Enterprise Search, the two names are currently used interchangably in this module. This module does not currently provide support for Workplace Search (which is the **other** product that is included in Enterprise Search).

Installation
------------

[](#installation)

`composer require silverstripe/silverstripe-forager-elastic-enterprise`

Activating EnterpriseSearch
---------------------------

[](#activating-enterprisesearch)

To start using Elastic Enterprise Search, define environment variables containing your private API key, endpoint, and prefix.

```
ENTERPRISE_SEARCH_ENDPOINT="https://abc123.app-search.ap-southeast-2.aws.found.io"
ENTERPRISE_SEARCH_ENGINE_PREFIX="engine-name-excluding-variant"
ENTERPRISE_SEARCH_API_KEY="private-abc123"

```

Configuring Enterprise Search
-----------------------------

[](#configuring-enterprise-search)

The most notable configuration surface for Enterprise Search is the schema, which determines how data is stored in your Enterprise Search index (engine). There are four types of data in Enterprise Search:

- `text` (default)
- `date`
- `number`
- `geolocation`

You can specify these data types in the `options` node of your fields.

```
SilverStripe\Forager\Service\IndexConfiguration:
  indexes:
    myindex:
      includeClasses:
        SilverStripe\CMS\Model\SiteTree:
          fields:
            title: true
            summary_field:
              property: SummaryField
              options:
                type: text
```

**Note**: Be careful about whimsically changing your schema. EnterpriseSearch may need to be fully reindexed if you change the name of a field. Fields cannot be deleted so re-naming one will leave any previously created fields around. At the time of writing there is a limit of 64 fields per engine.

Additional documentation
------------------------

[](#additional-documentation)

Majority of documentation is provided by the Silverstripe Forager module. A couple in particular that might be useful to you are:

- [Configuration](https://github.com/silverstripeltd/silverstripe-forager/blob/1/docs/en/configuration.md)
- [Customisation](https://github.com/silverstripeltd/silverstripe-forager/blob/1/docs/en/customising.md)

Searching
---------

[](#searching)

### PHP

[](#php)

To search via PHP you can use the [silverstripe-discoverer](https://github.com/silverstripeltd/silverstripe-discoverer)along with the [silverstripe-discoverer-elastic-enterprise](https://github.com/silverstripeltd/silverstripe-discoverer-elastic-enterprise)provider module.

### JS

[](#js)

Elastic themselves provide a headless [Search UI](https://docs.elastic.co/search-ui/overview) JS library, which can be used with vanilla JS or any framework like React, Vue, etc.

There are two main libraries:

- [@elastic/search-ui-app-search-connector](https://www.npmjs.com/package/@elastic/search-ui-app-search-connector)
    - Provides a class to help you connect to your Elastic App Search API.
- [@elastic/search-ui](https://www.npmjs.com/package/@elastic/search-ui)
    - Provides a class that allows you to perform searches and manage your search state.

If you are using React, then there is also [@elastic/react-search-ui](https://www.npmjs.com/package/@elastic/react-search-ui), which provides interface components.

If you are not using React, then the creation of the view will be up to you.

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance54

Moderate activity, may be stable

Popularity21

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 81.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~146 days

Total

3

Last Release

358d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/afbb3dcc9ef29c1a6eedd6addcae5fce9ab1271915a85a4c349301b71237368d?d=identicon)[silverstripe-machine01](/maintainers/silverstripe-machine01)

---

Top Contributors

[![chrispenny](https://avatars.githubusercontent.com/u/505788?v=4)](https://github.com/chrispenny "chrispenny (22 commits)")[![blueo](https://avatars.githubusercontent.com/u/948122?v=4)](https://github.com/blueo "blueo (3 commits)")[![lukereative](https://avatars.githubusercontent.com/u/1415622?v=4)](https://github.com/lukereative "lukereative (1 commits)")[![michalkleiner](https://avatars.githubusercontent.com/u/233342?v=4)](https://github.com/michalkleiner "michalkleiner (1 commits)")

---

Tags

searchelasticSilverstripe-CMSElastic Enterprise SearchEnterprise Search

### Embed Badge

![Health badge](/badges/silverstripe-silverstripe-forager-elastic-enterprise/health.svg)

```
[![Health](https://phpackages.com/badges/silverstripe-silverstripe-forager-elastic-enterprise/health.svg)](https://phpackages.com/packages/silverstripe-silverstripe-forager-elastic-enterprise)
```

###  Alternatives

[elasticsearch/elasticsearch

PHP Client for Elasticsearch

5.3k178.3M943](/packages/elasticsearch-elasticsearch)[jeroen-g/explorer

Next-gen Elasticsearch driver for Laravel Scout.

397612.3k](/packages/jeroen-g-explorer)[elastic/enterprise-search

Enterprise Search official PHP client

25617.7k9](/packages/elastic-enterprise-search)[statamic-rad-pack/meilisearch

meilisearch search driver for Statamic

1661.7k](/packages/statamic-rad-pack-meilisearch)[blomstra/search

Replaces Flarum search with one powered by an elastic search server.

114.9k](/packages/blomstra-search)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
