PHPackages                             cmsig/seal-symfony-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. cmsig/seal-symfony-bundle

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

cmsig/seal-symfony-bundle
=========================

An integration of CMS-IG SEAL search abstraction into Symfony Framework.

0.12.9(2mo ago)15195.8k↓38.8%13MITPHPPHP ^8.1

Since May 11Pushed 1mo ago2 watchersCompare

[ Source](https://github.com/PHP-CMSIG/seal-symfony-bundle)[ Packagist](https://packagist.org/packages/cmsig/seal-symfony-bundle)[ Fund](https://paypal.me/L91)[ GitHub Sponsors](https://github.com/alexander-schranz)[ RSS](/packages/cmsig-seal-symfony-bundle/feed)WikiDiscussions 0.12 Synced 1mo ago

READMEChangelogDependencies (44)Versions (28)Used By (3)

> **Note**: This is part of the `cmsig/search` project create issues in the [main repository](https://github.com/php-cmsig/search).

---

  **Your feedback is important 📘**
 [Are you working with SEAL? Let us know!](https://github.com/PHP-CMSIG/search/discussions/416) | [Which Search Engines do you use and why?](https://github.com/PHP-CMSIG/search/discussions/457)

 [![SEAL Logo with an abstract seal sitting on a telescope.](https://avatars.githubusercontent.com/u/120221538?s=400&v=6)](https://avatars.githubusercontent.com/u/120221538?s=400&v=6)

Logo created by [Meine Wilma](https://cargocollective.com/meinewilma)

SEAL
 Symfony Integration
==========================

[](#seal--symfony-integration)

Integration of the CMS-IG — Search Engine Abstraction Layer (SEAL) into Symfony.

> **Note**: This project is heavily under development and any feedback is greatly appreciated.

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

[](#installation)

Use [composer](https://getcomposer.org/) for install the package:

```
composer require cmsig/seal-symfony-bundle
```

Also install one of the listed adapters.

### List of adapters

[](#list-of-adapters)

The following adapters are available:

- [MemoryAdapter](../../packages/seal-memory-adapter): `cmsig/seal-memory-adapter`
- [ElasticsearchAdapter](../../packages/seal-elasticsearch-adapter): `cmsig/seal-elasticsearch-adapter`
- [OpensearchAdapter](../../packages/seal-opensearch-adapter): `cmsig/seal-opensearch-adapter`
- [MeilisearchAdapter](../../packages/seal-meilisearch-adapter): `cmsig/seal-meilisearch-adapter`
- [AlgoliaAdapter](../../packages/seal-algolia-adapter): `cmsig/seal-algolia-adapter`
- [LoupeAdapter](../../packages/seal-loupe-adapter): `cmsig/seal-loupe-adapter`
- [SolrAdapter](../../packages/seal-solr-adapter): `cmsig/seal-solr-adapter`
- [RediSearchAdapter](../../packages/seal-redisearch-adapter): `cmsig/seal-redisearch-adapter`
- [TypesenseAdapter](../../packages/seal-typesense-adapter): `cmsig/seal-typesense-adapter`
- ... more coming soon

Additional Wrapper adapters:

- [ReadWriteAdapter](../../packages/seal-read-write-adapter): `cmsig/seal-read-write-adapter`
- [MultiAdapter](../../packages/seal-multi-adapter): `cmsig/seal-multi-adapter`

Creating your own adapter? Add the [`seal-php-adapter`](https://github.com/topics/seal-php-adapter) Topic to your GitHub Repository.

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

[](#configuration)

The following code shows how to configure the package:

```
# config/packages/cmsig_seal.yaml

cmsig_seal:
    schemas:
        app:
            dir: '%kernel.project_dir%/config/schemas'
            # engine: 'default'
    engines:
        default:
            adapter: '%env(ENGINE_URL)%'
```

A more complex configuration can be here found:

```
# config/packages/cmsig_seal.yaml

cmsig_seal:
    schemas:
        app:
            dir: '%kernel.project_dir%/config/schemas/app'
        other:
            dir: '%kernel.project_dir%/config/schemas/other'
            engine: algolia
    engines:
        algolia:
            adapter: 'algolia://%env(ALGOLIA_APPLICATION_ID)%:%env(ALGOLIA_ADMIN_API_KEY)%'
        elasticsearch:
            adapter: 'elasticsearch://127.0.0.1:9200'
        loupe:
            adapter: 'loupe://var/indexes'
        meilisearch:
            adapter: 'meilisearch://127.0.0.1:7700'
        memory:
            adapter: 'memory://'
        opensearch:
            adapter: 'opensearch://127.0.0.1:9200'
        redisearch:
            adapter: 'redis://supersecure@127.0.0.1:6379'
        solr:
            adapter: 'solr://127.0.0.1:8983'
        typesense:
            adapter: 'typesense://S3CR3T@127.0.0.1:8108'

        # ...
        multi:
            adapter: 'multi://elasticsearch?adapters[]=opensearch'
        read-write:
            adapter: 'read-write://elasticsearch?write=multi'
    index_name_prefix: ''
```

Usage
-----

[](#usage)

The default engine is available as `Engine`:

```
class Some {
    public function __construct(
        private readonly \CmsIg\Seal\EngineInterface $engine,
    ) {
    }
}
```

A specific engine is available under the config key suffix with `Engine`:

```
class Some {
    public function __construct(
        private readonly \CmsIg\Seal\EngineInterface $algoliaEngine,
    ) {
    }
}
```

Multiple engines can be accessed via the `EngineRegistry`:

```
class Some {
    private Engine $engine;

    public function __construct(
        private readonly \CmsIg\Seal\EngineRegistry $engineRegistry,
    ) {
        $this->engine = $this->engineRegistry->get('algolia');
    }
}
```

How to create a `Schema` file and use your `Engine` can be found [SEAL Documentation](../../README.md#usage).

### Commands

[](#commands)

The bundle provides the following commands:

**Create configured indexes**

```
bin/console cmsig:seal:index-create --help
```

**Drop configured indexes**

```
bin/console cmsig:seal:index-drop --help
```

**Reindex configured indexes**

```
bin/console cmsig:seal:reindex --help
```

Authors
-------

[](#authors)

- [Alexander Schranz](https://github.com/alexander-schranz/)
- [The Community Contributors](https://github.com/php-cmsig/search/graphs/contributors)

###  Health Score

54

—

FairBetter than 97% of packages

Maintenance87

Actively maintained with recent releases

Popularity43

Moderate usage in the ecosystem

Community22

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 92.1% 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 ~38 days

Recently: every ~14 days

Total

28

Last Release

53d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1698337?v=4)[Alexander Schranz](/maintainers/alexander-schranz)[@alexander-schranz](https://github.com/alexander-schranz)

---

Top Contributors

[![alexander-schranz](https://avatars.githubusercontent.com/u/1698337?v=4)](https://github.com/alexander-schranz "alexander-schranz (105 commits)")[![Toflar](https://avatars.githubusercontent.com/u/481937?v=4)](https://github.com/Toflar "Toflar (3 commits)")[![ker0x](https://avatars.githubusercontent.com/u/5331654?v=4)](https://github.com/ker0x "ker0x (2 commits)")[![ToshY](https://avatars.githubusercontent.com/u/31921460?v=4)](https://github.com/ToshY "ToshY (1 commits)")[![mario-fehr](https://avatars.githubusercontent.com/u/14167832?v=4)](https://github.com/mario-fehr "mario-fehr (1 commits)")[![baldurrensch](https://avatars.githubusercontent.com/u/871417?v=4)](https://github.com/baldurrensch "baldurrensch (1 commits)")[![szepeviktor](https://avatars.githubusercontent.com/u/952007?v=4)](https://github.com/szepeviktor "szepeviktor (1 commits)")

---

Tags

cmsigphpseal-integrationseal-searchsearchsymfonysearchmeilisearchsymfonybundleabstractionelasticsearchopensearchalgoliasolrBridgeintegrationSymfony Bundleredisearchtypesensesealsearch-clientsearch-abstractionloupecmsig

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Rector

Type Coverage Yes

### Embed Badge

![Health badge](/badges/cmsig-seal-symfony-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/cmsig-seal-symfony-bundle/health.svg)](https://phpackages.com/packages/cmsig-seal-symfony-bundle)
```

###  Alternatives

[cmsig/seal

Search Engine Abstraction Layer

32207.9k53](/packages/cmsig-seal)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)

PHPackages © 2026

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