PHPackages                             kamisama/bounce - 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. kamisama/bounce

ActiveCakephp-plugin[Search &amp; Filtering](/categories/search)

kamisama/bounce
===============

A very lightweight CakePhp plugin to make your models automagically indexable by Elastic Search

46PHP

Since May 18Pushed 13y ago1 watchersCompare

[ Source](https://github.com/kamisama/bounce)[ Packagist](https://packagist.org/packages/kamisama/bounce)[ RSS](/packages/kamisama-bounce/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

Bounce [![Build Status](https://camo.githubusercontent.com/6ec7208d14e06962e15e3648b8545d80a8f35430861eec24c6ee86cc9001ca1b/68747470733a2f2f7472617669732d63692e6f72672f6b616d6973616d612f626f756e63652e706e67)](https://travis-ci.org/kamisama/bounce) [![Coverage Status](https://camo.githubusercontent.com/7f3d77166fd15e932ae85d11d8a7b675169a014deeae4ec54a8f6483a69f077c/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6b616d6973616d612f626f756e63652f62616467652e706e67)](https://coveralls.io/r/kamisama/bounce) [![Dependency Status](https://camo.githubusercontent.com/6d51c23d5eb1954ba46bcb29544bbb1b00cac9686978ff435886366675b9a4e6/68747470733a2f2f7777772e76657273696f6e6579652e636f6d2f7061636b6167652f7068702d2d6b616d6973616d612d2d626f756e63652f62616467652e706e67)](https://www.versioneye.com/package/php--kamisama--bounce)
=============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================

[](#bounce---)

A very lightweight CakePhp plugin to make your models automagically indexable by Elastic Search

Just install the plugin and attach the **Bounce.Indexable**, … and voila ! It's the simplest plugin to easily get your CakePHP hooked with Elastic Search.

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

[](#installation)

### Via git

[](#via-git)

```
clone git://github.com/kamisama/bounce.git path/to/app/Plugin/Bounce

```

### Via Composer

[](#via-composer)

Just add *kamisama/bounce* to your require, in your app composer.json.

### Load the plugin

[](#load-the-plugin)

Load the plugin into your app by editing your Config/bootstrap.php

```
CakePlugin::loadAll(array('Bounce' => array('bootstrap' => true)));
```

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

[](#configuration)

You can edit the connection info to your elastic search server in Bounce/Config/bootstrap

```
Configure::write('Bounce', array(
	'host' => '127.0.0.1',
	'port' => '9200'
));
```

Then attach the Indexable Behavior to your model

```
public $actAs = array('Bounce.Indexable');
```

The behavior offers a few options :

- `index` (string): specify the index name of your model, default to *main*
- `type` (string): specify the type name of your model, default to your model alias
- `mapping` (string): specify which fields you want to index in elastic search, default to *false*, will index all fields.

#### Example

[](#example)

```
class Song extends AppModel
{

	public $actAs = array('Bounce.Indexable' => array(
		'index' => 'music',
		'type' => 'song',
		'mapping' => array(
			'title' => 'string',
			'track' => 'integer',
			'length' => 'integer'
		)
	));
}
```

The behavior will then only index the title, track and length fields, all the other field will be ignored. The values are used only for the [mapping](http://www.elasticsearch.org/guide/reference/mapping/).

You model will automatically indexed on save, on update and on delete.

### Notes

[](#notes)

This plugin does not offers search function, it just index your models. If you want more advanced and complex indexing functions, check out the [other plugin by kvz](https://github.com/kvz/cakephp-elasticsearch-plugin).

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/2935823cb9658334ccbba85d6a2be151d54ac52e1a6981b79b27a263e48320b1?d=identicon)[wa0x6e](/maintainers/wa0x6e)

---

Top Contributors

[![wa0x6e](https://avatars.githubusercontent.com/u/495709?v=4)](https://github.com/wa0x6e "wa0x6e (16 commits)")

### Embed Badge

![Health badge](/badges/kamisama-bounce/health.svg)

```
[![Health](https://phpackages.com/badges/kamisama-bounce/health.svg)](https://phpackages.com/packages/kamisama-bounce)
```

###  Alternatives

[awesome-nova/dependent-filter

Dependent filters for Laravel Nova

26190.2k](/packages/awesome-nova-dependent-filter)[algolia/php-dom-parser

A simple tool to turn DOM into Algolia search friendly record objects.

181.8k](/packages/algolia-php-dom-parser)

PHPackages © 2026

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