Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved Search #360

Closed
glennjacobs opened this issue Jan 31, 2022 · 0 comments
Closed

Improved Search #360

glennjacobs opened this issue Jan 31, 2022 · 0 comments
Labels
admin-panel Improvements or additions to admin panel core Improvements or additions to core package feature Adds new functionality to GetCandy

Comments

@glennjacobs
Copy link
Contributor

glennjacobs commented Jan 31, 2022

Admin Hub should not be aware of search engines, it just expects an interface to be implemented.

GetCandy will provide engines for Database, Meilisearch and Algolia.

The interface should allow for optional filters to be passed, to allow for customisations. But standard filters should be set in the interface.

Config sets the engine for each admin hub search requirement, as example below...

admin/search.php

    'engines' => [
        'products' => GetCandy\Algolia\ProductsEngine::class,
        'orders' => GetCandy\Hub\Search\Database\OrdersEngine::class,
        //.. etc
    ],

If a developer decides to use the database for Orders engine they probably don't want to be indexing order and customer information into the Algolia or Meilisearch engine. So we should make the indexing configurable.

Meilisearch and Algolia should be optional addons, e.g.

composer require getcandy/algolia
composer require getcandy/meilisearch

Database search engines are in the admin hub by default.

The Algolia package will likely want to take advantage of https://www.algolia.com/doc/framework-integration/laravel/getting-started/introduction-to-scout-extended/?client=php

Meilisearch has something similar planned, but it's not been implemented yet, see meilisearch/integration-guides#123

When documenting, Algolia and Meilisearch can have their own installation and configuration pages.
And for product retrieval documentation etc. we can have a single page showing examples for the QueryBuilder, Meilisearch and Algolia, using a tabbed system or similar.

@glennjacobs glennjacobs added the core Improvements or additions to core package label Apr 28, 2022
@glennjacobs glennjacobs changed the title Advanced Search Improved Search Apr 28, 2022
@glennjacobs glennjacobs transferred this issue from another repository Jul 15, 2022
@alecritson alecritson added admin-panel Improvements or additions to admin panel and removed admin hub labels Jul 15, 2022
@glennjacobs glennjacobs added the feature Adds new functionality to GetCandy label Jul 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
admin-panel Improvements or additions to admin panel core Improvements or additions to core package feature Adds new functionality to GetCandy
Projects
None yet
Development

No branches or pull requests

2 participants