{"id":21900692,"url":"https://github.com/php-cmsig/seal-symfony-bundle","last_synced_at":"2025-04-15T19:54:13.098Z","repository":{"id":150073569,"uuid":"622566896","full_name":"PHP-CMSIG/seal-symfony-bundle","owner":"PHP-CMSIG","description":"An integration of CMS-IG SEAL search abstraction via a Bundle into the Symfony Framework. Part of the https://github.com/php-cmsig/search project. READ-ONLY Repository ","archived":false,"fork":false,"pushed_at":"2025-03-19T16:36:15.000Z","size":674,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"0.7","last_synced_at":"2025-04-15T19:54:08.152Z","etag":null,"topics":["cmsig","php","seal-integration","seal-search","search","symfony"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PHP-CMSIG.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["alexander-schranz"],"custom":["https://paypal.me/L91"]}},"created_at":"2023-04-02T13:53:04.000Z","updated_at":"2025-04-04T05:25:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"f1d69b2e-7e0c-4d59-bb31-b374a4c22dd6","html_url":"https://github.com/PHP-CMSIG/seal-symfony-bundle","commit_stats":null,"previous_names":["php-cmsig/seal-symfony-bundle"],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PHP-CMSIG%2Fseal-symfony-bundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PHP-CMSIG%2Fseal-symfony-bundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PHP-CMSIG%2Fseal-symfony-bundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PHP-CMSIG%2Fseal-symfony-bundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PHP-CMSIG","download_url":"https://codeload.github.com/PHP-CMSIG/seal-symfony-bundle/tar.gz/refs/heads/0.7","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249145296,"owners_count":21219966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cmsig","php","seal-integration","seal-search","search","symfony"],"created_at":"2024-11-28T15:09:33.558Z","updated_at":"2025-04-15T19:54:13.092Z","avatar_url":"https://github.com/PHP-CMSIG.png","language":"PHP","funding_links":["https://github.com/sponsors/alexander-schranz","https://paypal.me/L91"],"categories":[],"sub_categories":[],"readme":"\u003e **Note**:\n\u003e This is part of the `cmsig/search` project create issues in the [main repository](https://github.com/php-cmsig/search).\n\n---\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg alt=\"SEAL Logo with an abstract seal sitting on a telescope.\" src=\"https://avatars.githubusercontent.com/u/120221538?s=400\u0026v=6\" width=\"200\" height=\"200\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003eLogo created by \u003ca href=\"https://cargocollective.com/meinewilma\"\u003eMeine Wilma\u003c/a\u003e\u003c/div\u003e\n\n\u003ch1 align=\"center\"\u003eSEAL \u003cbr /\u003e Symfony Integration\u003c/h1\u003e\n\n\u003cbr /\u003e\n\u003cbr /\u003e\n\nIntegration of the CMS-IG — Search Engine Abstraction Layer (SEAL) into Symfony.\n\n\u003e **Note**:\n\u003e This project is heavily under development and any feedback is greatly appreciated.\n\n## Installation\n\nUse [composer](https://getcomposer.org/) for install the package:\n\n```bash\ncomposer require cmsig/seal-symfony-bundle\n```\n\nAlso install one of the listed adapters.\n\n### List of adapters\n\nThe following adapters are available:\n\n - [MemoryAdapter](../../packages/seal-memory-adapter): `cmsig/seal-memory-adapter`\n - [ElasticsearchAdapter](../../packages/seal-elasticsearch-adapter): `cmsig/seal-elasticsearch-adapter`\n - [OpensearchAdapter](../../packages/seal-opensearch-adapter): `cmsig/seal-opensearch-adapter`\n - [MeilisearchAdapter](../../packages/seal-meilisearch-adapter): `cmsig/seal-meilisearch-adapter`\n - [AlgoliaAdapter](../../packages/seal-algolia-adapter): `cmsig/seal-algolia-adapter`\n - [LoupeAdapter](../../packages/seal-loupe-adapter): `cmsig/seal-loupe-adapter`\n - [SolrAdapter](../../packages/seal-solr-adapter): `cmsig/seal-solr-adapter`\n - [RediSearchAdapter](../../packages/seal-redisearch-adapter): `cmsig/seal-redisearch-adapter`\n - [TypesenseAdapter](../../packages/seal-typesense-adapter): `cmsig/seal-typesense-adapter`\n - ... more coming soon\n\nAdditional Wrapper adapters:\n\n - [ReadWriteAdapter](../../packages/seal-read-write-adapter): `cmsig/seal-read-write-adapter`\n - [MultiAdapter](../../packages/seal-multi-adapter): `cmsig/seal-multi-adapter`\n\nCreating your own adapter? Add the [`seal-php-adapter`](https://github.com/topics/seal-php-adapter) Topic to your GitHub Repository.\n\n## Configuration\n\nThe following code shows how to configure the package:\n\n```yaml\n# config/packages/cmsig_seal.yaml\n\ncmsig_seal:\n    schemas:\n        app:\n            dir: '%kernel.project_dir%/config/schemas'\n            # engine: 'default'\n    engines:\n        default:\n            adapter: '%env(ENGINE_URL)%'\n```\n\nA more complex configuration can be here found:\n\n```yaml\n# config/packages/cmsig_seal.yaml\n\ncmsig_seal:\n    schemas:\n        app:\n            dir: '%kernel.project_dir%/config/schemas/app'\n        other:\n            dir: '%kernel.project_dir%/config/schemas/other'\n            engine: algolia\n    engines:\n        algolia:\n            adapter: 'algolia://%env(ALGOLIA_APPLICATION_ID)%:%env(ALGOLIA_ADMIN_API_KEY)%'\n        elasticsearch:\n            adapter: 'elasticsearch://127.0.0.1:9200'\n        loupe:\n            adapter: 'loupe://var/indexes'\n        meilisearch:\n            adapter: 'meilisearch://127.0.0.1:7700'\n        memory:\n            adapter: 'memory://'\n        opensearch:\n            adapter: 'opensearch://127.0.0.1:9200'\n        redisearch:\n            adapter: 'redis://supersecure@127.0.0.1:6379'\n        solr:\n            adapter: 'solr://127.0.0.1:8983'\n        typesense:\n            adapter: 'typesense://S3CR3T@127.0.0.1:8108'\n\n        # ...\n        multi:\n            adapter: 'multi://elasticsearch?adapters[]=opensearch'\n        read-write:\n            adapter: 'read-write://elasticsearch?write=multi'\n    index_name_prefix: ''\n```\n\n## Usage\n\nThe default engine is available as `Engine`:\n\n```php\nclass Some {\n    public function __construct(\n        private readonly \\CmsIg\\Seal\\EngineInterface $engine,\n    ) {\n    }\n}\n```\n\nA specific engine is available under the config key suffix with `Engine`:\n\n```php\nclass Some {\n    public function __construct(\n        private readonly \\CmsIg\\Seal\\EngineInterface $algoliaEngine,\n    ) {\n    }\n}\n```\n\nMultiple engines can be accessed via the `EngineRegistry`:\n\n```php\nclass Some {\n    private Engine $engine;\n\n    public function __construct(\n        private readonly \\CmsIg\\Seal\\EngineRegistry $engineRegistry,\n    ) {\n        $this-\u003eengine = $this-\u003eengineRegistry-\u003eget('algolia');\n    }\n}\n```\n\nHow to create a `Schema` file and use your `Engine` can be found [SEAL Documentation](../../README.md#usage).\n\n### Commands\n\nThe bundle provides the following commands:\n\n**Create configured indexes**\n\n```bash\nbin/console cmsig:seal:index-create --help\n```\n\n**Drop configured indexes**\n\n```bash\nbin/console cmsig:seal:index-drop --help\n```\n\n**Reindex configured indexes**\n\n```bash\nbin/console cmsig:seal:reindex --help\n```\n\n## Authors\n\n- [Alexander Schranz](https://github.com/alexander-schranz/)\n- [The Community Contributors](https://github.com/php-cmsig/search/graphs/contributors)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphp-cmsig%2Fseal-symfony-bundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphp-cmsig%2Fseal-symfony-bundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphp-cmsig%2Fseal-symfony-bundle/lists"}