LaravelPackages.net
Acme Inc.
Toggle sidebar
triadev/laravel-elasticsearch-config-builder

Elasticsearch config (mappings + settings) builder for laravel.

7
0
v1.0.0
About triadev/laravel-elasticsearch-config-builder

triadev/laravel-elasticsearch-config-builder is a Laravel package for elasticsearch config (mappings + settings) builder for laravel.. It currently has 0 GitHub stars and 7 downloads on Packagist (latest version v1.0.0). Install it with composer require triadev/laravel-elasticsearch-config-builder. Discover more Laravel packages by triadev or browse all Laravel packages to compare alternatives.

Last updated

LaravelElasticsearchConfigBuilder

Software license Travis Coveralls CodeCov Latest stable Latest development Monthly installs

Elasticsearch config (mappings + settings) builder for laravel.

Supported laravel versions

Laravel 5.5 Laravel 5.6 Laravel 5.7

Supported elasticsearch versions

Elasticsearch 6.0 Elasticsearch 6.1 Elasticsearch 6.2 Elasticsearch 6.3 Elasticsearch 6.4

Main features

  • Build mappings
  • Build settings
  • Multilanguage keys
  • Multilanguage indices
  • Mapping validation check

Installation

Composer

composer require triadev/laravel-elasticsearch-config-builder

Application

The package is registered through the package discovery of laravel and Composer.

https://laravel.com/docs/5.6/packages

Configuration

| Key | Value | Description | |:-------------:|:-------------:|:-----:| | filePath | STRING | File path for elasticsearch configs | | validation.whitelistFilter | ARRAY | --- | | indices | ARRAY | [INDEX => VERSION, ...] |

Mappings

Directory (i.e. 1.0.0) with elasticsearch config files.

mappings.php (Example)

return [
    TYPE => [
        'properties' => [
            FIELD => [
                'type' => TYPE
            ],
            ...
        ],
        ...
    ],
    ...
];

settings.php (Example)

return [
    'refresh_interval' => "30s",
    'analysis' => [
        'filter' => [
            'germanStop' => [
                'type' => 'stop',
                'stopwords' => '_german_'
            ]
        ],
        'analyzer' => [
            'exampleAnalyzer' => [
                'type' => 'custom',
                'tokenizer' => 'standard',
                'filter' => [
                    'germanStop'
                ]
            ]
        ]
    ]
];

translations.php (Example)

| Key | Value | Description | |:-------------:|:-------------:|:-----:| | type | STRING | field or index | | locales | ARRAY | deDE, enUS, ... | | fields | ARRAY | fields to translation | | configPerLocale | ARRAY | --- |

return [
    'type' => 'field',
    'locales' => [
        'enUS'
    ],
    'fields' => [
        'example.properties.title'
    ],
    'configPerLocale' => [
        'example.properties.title' => [
            'enUS' => [
                'analyzer' => 'exampleAnalyzerEn'
            ]
        ]
    ]
];

Reporting Issues

If you do find an issue, please feel free to report it with GitHub's bug tracker for this project.

Alternatively, fork the project and make a pull request. :)

Testing

  1. docker-compose -f docker-compose.yml up
  2. composer test

Contributing

Please see CONTRIBUTING for details.

Credits

Other

License

The code for LaravelElasticsearchConfigBuilder is distributed under the terms of the MIT license (see LICENSE).

Star History Chart