PHPackages                             kunstmaan/node-search-bundle - 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. kunstmaan/node-search-bundle

ActiveSymfony-bundle[Search &amp; Filtering](/categories/search)

kunstmaan/node-search-bundle
============================

This bundle uses the KunstmaanSearchBundle to search through Nodes from the KunstmaanNodeBundle

7.3.0(1y ago)879.2k↓36.7%3[1 issues](https://github.com/Kunstmaan/KunstmaanNodeSearchBundle/issues)1MITPHPPHP ^8.1

Since May 29Pushed 3mo ago15 watchersCompare

[ Source](https://github.com/Kunstmaan/KunstmaanNodeSearchBundle)[ Packagist](https://packagist.org/packages/kunstmaan/node-search-bundle)[ Docs](https://github.com/Kunstmaan/KunstmaanNodeSearchBundle)[ RSS](/packages/kunstmaan-node-search-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (3)Dependencies (13)Versions (221)Used By (1)

KunstmaanNodeSearchBundle
=========================

[](#kunstmaannodesearchbundle)

[![Build Status](https://camo.githubusercontent.com/99a6eb9359fe6742c3743b9a1c1993d16954850d45206ff4959aaedef4b34395/68747470733a2f2f7472617669732d63692e6f72672f4b756e73746d61616e2f4b756e73746d61616e4e6f646553656172636842756e646c652e706e67)](https://travis-ci.org/Kunstmaan/KunstmaanNodeSearchBundle)[![Total Downloads](https://camo.githubusercontent.com/057bdc5ec28903e6fda66dd6023fb61e5031e8a93bc62382926e650c958f2b2e/68747470733a2f2f706f7365722e707567782e6f72672f6b756e73746d61616e2f6e6f64652d7365617263682d62756e646c652f646f776e6c6f6164732e706e67)](https://packagist.org/packages/kunstmaan/node-search-bundle)[![Latest Stable Version](https://camo.githubusercontent.com/1eacfba1eaa944baef68f590e5d1b6348adccf70baf733a09f2ccccbd7391555/68747470733a2f2f706f7365722e707567782e6f72672f6b756e73746d61616e2f6e6f64652d7365617263682d62756e646c652f762f737461626c652e706e67)](https://packagist.org/packages/kunstmaan/node-search-bundle)[![Analytics](https://camo.githubusercontent.com/3ea8efe4185246e350ce72c10b3db7c453a2ea48dfb80674c643fcedf0d2ca0e/68747470733a2f2f67612d626561636f6e2e61707073706f742e636f6d2f55412d333136303733352d372f4b756e73746d61616e2f4b756e73746d61616e4e6f646553656172636842756e646c65)](https://github.com/igrigorik/ga-beacon)

This bundle uses the [KunstmaanSearchBundle](https://github.com/Kunstmaan/KunstmaanSearchBundle) to search through Nodes from the [KunstmaanNodeBundle](https://github.com/Kunstmaan/KunstmaanNodeBundle)

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

[](#installation)

composer.json

```
    "require": {
        "kunstmaan/node-search-bundle": "*"
    },
```

AppKernel.php:

```
    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Kunstmaan\NodeSearchBundle\KunstmaanNodeSearchBundle(),
            // ...
        );
```

Configuration
-------------

[](#configuration)

### SearchPage

[](#searchpage)

Extend the AbstractSearchPage and add your new class as a possible child to a page in your website :

```
    /**
     * @return array
     */
    public function getPossibleChildTypes()
    {
        return array(
            array(
                'name' => 'Search page',
                'class'=> "Acme\DemoBundle\Entity\SearchPage"
            )
        );
    }
```

### Custom mapping

[](#custom-mapping)

You may configure the index mapping via Symfony config. For example:

```
# config.yml
kunstmaan_node_search:
    mapping:
        average_score:
            name: average_score
            type: float
            index: not_analyzed
        tags:
            name: tags
            type: string
            index: analyzed

```

Please notice that this *does not* index any data.

Adding data to index
--------------------

[](#adding-data-to-index)

Pages can implement `HasCustomSearchDataInterface` to dynamically add more data to the document while indexing. For more complex scenarios a service can listen on the `kunstmaan_node_search.onIndexNode` event.

Documentation
-------------

[](#documentation)

Find more documentation on how it works [here](https://github.com/Kunstmaan/KunstmaanNodeSearchBundle/tree/master/Resources/doc/NodeSearchBundle.md)

###  Health Score

58

—

FairBetter than 98% of packages

Maintenance63

Regular maintenance activity

Popularity37

Limited adoption so far

Community27

Small or concentrated contributor base

Maturity91

Battle-tested with a long release history

 Bus Factor2

2 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 ~21 days

Recently: every ~93 days

Total

218

Last Release

92d ago

Major Versions

5.10.1 → 6.0.02021-11-07

5.10.5 → 6.0.42022-04-05

5.10.7 → 6.0.62022-09-22

6.4.2 → 7.0.42024-03-24

6.x-dev → 7.0.52024-09-14

PHP version history (9 changes)v0.1PHP &gt;=5.3.3

3.1.0PHP &gt;=5.4.0

3.5.x-devPHP &gt;=5.5.0

5.2.2PHP ^7.1

5.7.0PHP ^7.2

5.9.0PHP ^7.2|^8.0

6.2.0PHP ^8.0

7.1.0-alpha1PHP ^8.1

7.x-devPHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/62ecb43e61751f5fc28256b948ef82f76704338a102d5122b2a6b355e8e972df?d=identicon)[Kunstmaan](/maintainers/Kunstmaan)

---

Top Contributors

[![acrobat](https://avatars.githubusercontent.com/u/1374857?v=4)](https://github.com/acrobat "acrobat (69 commits)")[![Devolicious](https://avatars.githubusercontent.com/u/360302?v=4)](https://github.com/Devolicious "Devolicious (26 commits)")[![sandergo90](https://avatars.githubusercontent.com/u/1516413?v=4)](https://github.com/sandergo90 "sandergo90 (17 commits)")[![wimvds](https://avatars.githubusercontent.com/u/777114?v=4)](https://github.com/wimvds "wimvds (11 commits)")[![mlebkowski](https://avatars.githubusercontent.com/u/848731?v=4)](https://github.com/mlebkowski "mlebkowski (6 commits)")[![treeleaf](https://avatars.githubusercontent.com/u/877288?v=4)](https://github.com/treeleaf "treeleaf (4 commits)")[![fchris82](https://avatars.githubusercontent.com/u/1598178?v=4)](https://github.com/fchris82 "fchris82 (4 commits)")[![OskarStark](https://avatars.githubusercontent.com/u/995707?v=4)](https://github.com/OskarStark "OskarStark (4 commits)")[![KunstmaanLabs](https://avatars.githubusercontent.com/u/8841390?v=4)](https://github.com/KunstmaanLabs "KunstmaanLabs (2 commits)")[![cv65kr](https://avatars.githubusercontent.com/u/9404962?v=4)](https://github.com/cv65kr "cv65kr (2 commits)")[![jverdeyen](https://avatars.githubusercontent.com/u/117409?v=4)](https://github.com/jverdeyen "jverdeyen (2 commits)")[![krispypen](https://avatars.githubusercontent.com/u/156955?v=4)](https://github.com/krispypen "krispypen (2 commits)")[![mattiasdelang](https://avatars.githubusercontent.com/u/6680607?v=4)](https://github.com/mattiasdelang "mattiasdelang (2 commits)")[![KubaRocks](https://avatars.githubusercontent.com/u/1084433?v=4)](https://github.com/KubaRocks "KubaRocks (1 commits)")[![kimausloos](https://avatars.githubusercontent.com/u/493233?v=4)](https://github.com/kimausloos "kimausloos (1 commits)")[![piszczek](https://avatars.githubusercontent.com/u/9069664?v=4)](https://github.com/piszczek "piszczek (1 commits)")[![samuele-mrapps](https://avatars.githubusercontent.com/u/3425734?v=4)](https://github.com/samuele-mrapps "samuele-mrapps (1 commits)")[![deZinc](https://avatars.githubusercontent.com/u/26066867?v=4)](https://github.com/deZinc "deZinc (1 commits)")[![dannyvw](https://avatars.githubusercontent.com/u/1218389?v=4)](https://github.com/dannyvw "dannyvw (1 commits)")[![virtualize](https://avatars.githubusercontent.com/u/220102?v=4)](https://github.com/virtualize "virtualize (1 commits)")

---

Tags

searchelasticsearchkunstmaannode

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/kunstmaan-node-search-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/kunstmaan-node-search-bundle/health.svg)](https://phpackages.com/packages/kunstmaan-node-search-bundle)
```

###  Alternatives

[elasticsearch/elasticsearch

PHP Client for Elasticsearch

5.3k178.3M943](/packages/elasticsearch-elasticsearch)[matchish/laravel-scout-elasticsearch

Search among multiple models with ElasticSearch and Laravel Scout

7431.6M2](/packages/matchish-laravel-scout-elasticsearch)[jolicode/elastically

Opinionated Elastica based framework to bootstrap PHP and Elasticsearch implementations.

2571.7M1](/packages/jolicode-elastically)[kunstmaan/search-bundle

The KunstmaanSearchBundle works with ElasticSearch and supports different search providers. The bundle currently supports Elastica as a provider. Add your own objects to index using a tagged service which implements the SearchConfigurationInterface

1884.8k1](/packages/kunstmaan-search-bundle)[opensearch-project/opensearch-php

PHP Client for OpenSearch

15224.3M65](/packages/opensearch-project-opensearch-php)[mailerlite/laravel-elasticsearch

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

934529.3k2](/packages/mailerlite-laravel-elasticsearch)

PHPackages © 2026

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