PHPackages                             oat-sa/lib-tao-elasticsearch - 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. oat-sa/lib-tao-elasticsearch

ActiveLibrary[Search &amp; Filtering](/categories/search)

oat-sa/lib-tao-elasticsearch
============================

Library to search in Tao using Elasticsearch

v2.5.2(3y ago)220.9kGPL-2.0-onlyPHPPHP &gt;=7.1

Since Feb 2Pushed 2y ago43 watchersCompare

[ Source](https://github.com/oat-sa/lib-tao-elasticsearch)[ Packagist](https://packagist.org/packages/oat-sa/lib-tao-elasticsearch)[ Docs](http://www.taotesting.com)[ RSS](/packages/oat-sa-lib-tao-elasticsearch/feed)WikiDiscussions master Synced yesterday

READMEChangelog (10)Dependencies (2)Versions (29)Used By (0)

DEPRECATED
==========

[](#deprecated)

This libary must not be used anymore, since it is tighly coupled with tao extensions and its code is not reusable for other applications.

Please, refer to the [Advanced Search extension](https://github.com/oat-sa/extension-tao-advanced-search) when implementing elastic search integration related to search in the TAO platform.

[![No Maintenance Intended](https://camo.githubusercontent.com/d904056147052e22d8e1c7f46bb50293ed2aeb4c43ead9a2d0cf7a48b46d0562/687474703a2f2f756e6d61696e7461696e65642e746563682f62616467652e737667)](http://unmaintained.tech/)

lib-tao-elasticsearch
=====================

[](#lib-tao-elasticsearch)

Elastic Search engine

### Install:

[](#install)

##### Cli script based approach

[](#cli-script-based-approach)

```
sudo php vendor/oat-sa/lib-tao-elasticsearch/bin/activateElasticSearch.php

```

- `pathToTaoRoot` it's root path of your tao
- `host` it's host of your elasticsearch environment. `localhost` by default.
- `port` it's port of your elasticsearch environment. `9200` by default.
- `login` it's login for you elasticsearch environment. Optional property.
- `password` it's password for you elasticsearch environment. Optional property.

##### Seed file based approach

[](#seed-file-based-approach)

Following section to be included into seed file and describes an engine, connectivity string, service configuration and fallback

```
        "tao": {
          "search": {
            "type": "configurableService",
            "class": "oat\\tao\\elasticsearch\\ElasticSearch",
            "options": {
              "hosts": [
                {
                  "host": "elasticsearch",
                  "port": 9200
                }
              ],
              "settings": {
                "analysis": {
                  "filter": {
                    "autocomplete_filter": {
                      "type": "edge_ngram",
                      "min_gram": 1,
                      "max_gram": 100
                    }
                  },
                  "analyzer": {
                    "autocomplete": {
                      "type": "custom",
                      "tokenizer": "standard",
                      "filter": [
                        "lowercase",
                        "autocomplete_filter"
                      ]
                    }
                  }
                }
              },
              "oat\\tao\\model\\search\\strategy\\GenerisSearch": {
                "type": "configurableService",
                "class": "oat\\tao\\model\\search\\strategy\\GenerisSearch"
              }
            }
          }
        }

```

For the proper index structure creation on installation stage following may be used, where `indexFiles` contains the absolute path to the declaration, sample provided within this lib (@TODO should be decoupled)

```
"postInstall": [
    {
      "class": "\\oat\\tao\\elasticsearch\\Action\\IndexCreator",
      "params": [
        "--indexFiles",
        "/var/www/html/vendor/oat-sa/lib-tao-elasticsearch/config/index.conf.php"
      ]
    }
  ]

```

#### Setting Up:

[](#setting-up)

```
Add your elasticsearch host to the config/tao/search.conf.php like
    'hosts' => array(
        'http://localhost:9200'
    ),

```

```
Add you castom settings, filters or analysis

 'settings' => array(
        'analysis' => array(
            'filter' => array(
                'autocomplete_filter' => array(
                    'type' => 'edge_ngram',
                    'min_gram' => 1,
                    'max_gram' => 100
                )
            ),
            'analyzer' => array(
                'autocomplete' => array(
                    'type' => 'custom',
                    'tokenizer' => 'standard',
                    'filter' => array(
                        'lowercase',
                        'autocomplete_filter'
                    )
                )
            )
        )
    ),
 'isMap' => true

```

After this step, you need to fill the index with documents. to do this, you must run:

```
$ bash tao/scripts/tools/index/IndexPopulator.sh
```

This script will index all resources on the TAO platform for elastic search.

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity28

Limited adoption so far

Community24

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor3

3 contributors hold 50%+ of commits

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 ~99 days

Recently: every ~49 days

Total

18

Last Release

1390d ago

Major Versions

v1.2.0 → 2.0.02021-06-03

PHP version history (2 changes)v1.0PHP &gt;=5.3.10

v1.2.0PHP &gt;=7.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/98ddc6f1b615b1fac2d59f1e72d5dc6056cf6650414271da90cb3f0e203516fe?d=identicon)[bugalood](/maintainers/bugalood)

![](https://www.gravatar.com/avatar/e8c30644c0da147701176483ca1ca40e1c41012e6c5b0da47e984c1eb8a840b1?d=identicon)[jbout](/maintainers/jbout)

---

Top Contributors

[![andreluizmachado](https://avatars.githubusercontent.com/u/11900046?v=4)](https://github.com/andreluizmachado "andreluizmachado (36 commits)")[![tikhanovichA](https://avatars.githubusercontent.com/u/1053022?v=4)](https://github.com/tikhanovichA "tikhanovichA (33 commits)")[![boajer](https://avatars.githubusercontent.com/u/4569734?v=4)](https://github.com/boajer "boajer (25 commits)")[![bartlomiejmarszal](https://avatars.githubusercontent.com/u/16231681?v=4)](https://github.com/bartlomiejmarszal "bartlomiejmarszal (22 commits)")[![gabrielfs7](https://avatars.githubusercontent.com/u/1467589?v=4)](https://github.com/gabrielfs7 "gabrielfs7 (17 commits)")[![uncleempty](https://avatars.githubusercontent.com/u/32706312?v=4)](https://github.com/uncleempty "uncleempty (9 commits)")[![jbout](https://avatars.githubusercontent.com/u/5815304?v=4)](https://github.com/jbout "jbout (8 commits)")[![mike-ionut-mihai-sandu-tao](https://avatars.githubusercontent.com/u/50211080?v=4)](https://github.com/mike-ionut-mihai-sandu-tao "mike-ionut-mihai-sandu-tao (5 commits)")[![shpran](https://avatars.githubusercontent.com/u/59471572?v=4)](https://github.com/shpran "shpran (4 commits)")[![hectoras](https://avatars.githubusercontent.com/u/339792?v=4)](https://github.com/hectoras "hectoras (4 commits)")[![edwin-focaloid](https://avatars.githubusercontent.com/u/126317720?v=4)](https://github.com/edwin-focaloid "edwin-focaloid (2 commits)")[![zagovorichev](https://avatars.githubusercontent.com/u/1445911?v=4)](https://github.com/zagovorichev "zagovorichev (1 commits)")[![ionutpad](https://avatars.githubusercontent.com/u/31656944?v=4)](https://github.com/ionutpad "ionutpad (1 commits)")[![pedromarceOAT](https://avatars.githubusercontent.com/u/89389295?v=4)](https://github.com/pedromarceOAT "pedromarceOAT (1 commits)")[![alroniks](https://avatars.githubusercontent.com/u/303498?v=4)](https://github.com/alroniks "alroniks (1 commits)")

---

Tags

searchelasticsearchelasticTAOOAT

### Embed Badge

![Health badge](/badges/oat-sa-lib-tao-elasticsearch/health.svg)

```
[![Health](https://phpackages.com/badges/oat-sa-lib-tao-elasticsearch/health.svg)](https://phpackages.com/packages/oat-sa-lib-tao-elasticsearch)
```

###  Alternatives

[jeroen-g/explorer

Next-gen Elasticsearch driver for Laravel Scout.

399672.8k](/packages/jeroen-g-explorer)[mailerlite/laravel-elasticsearch

An easy way to use the official PHP ElasticSearch client in your Laravel applications.

936603.4k2](/packages/mailerlite-laravel-elasticsearch)[blomstra/search

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

125.3k](/packages/blomstra-search)

PHPackages © 2026

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