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.14(3w ago)15284.6k↓73.5%23MITPHPPHP ^8.1

Since May 11Pushed 2w 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 2d ago

READMEChangelogDependencies (88)Versions (30)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

57

—

FairBetter than 98% of packages

Maintenance96

Actively maintained with recent releases

Popularity44

Moderate usage in the ecosystem

Community24

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 92.3% 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 ~39 days

Recently: every ~26 days

Total

30

Last Release

18d ago

PHP version history (2 changes)0.1.0PHP ^8.1

0.13.x-devPHP ^8.2

### 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 (108 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)
```

PHPackages © 2026

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