Typesense
Description
Typesense is the Enso backend settings package for the Typesense Scout driver.
It stores the single integration settings row, exposes an edit/update API for enabling or disabling Typesense-backed search, and acts as the runtime feature flag consumed by companion integrations such as typesense-webshop.
Installation
Install the package:
composer require laravel-enso/typesense
Run the migrations:
php artisan migrate
Make sure the host application is already configured for:
laravel/scouttypesense/typesense-php- the Typesense Laravel driver
Features
- Persisted
typesense_settingsrow with cached accessors. - API endpoints for loading and updating settings.
- Boolean feature flag exposed through
Settings::enabled(). - Form builder integration for the administration UI.
Usage
Routes are registered under:
- prefix:
api/integrations/typesense - name prefix:
integrations.typesense. - middleware:
api,auth,core
Endpoints:
GET /PATCH {settings}
Model:
LaravelEnso\Typesense\Models\Settings
Helpful accessors:
current()enabled()
API
This package exposes its backend integration through the routes, controllers, services, jobs, and configuration points referenced in the usage examples above.
Consumers should rely on the published config keys, documented route groups, and explicit service classes shown in the examples. Internal helper classes, listeners, casts, and background jobs are implementation details unless the README calls them out as extension points.
Depends On
Required Enso packages:
Companion frontend package:
External service dependency:
- Typesense search engine accessed through Laravel Scout and the Typesense Laravel driver
Contributions
are welcome. Pull requests are great, but issues are good too.
Thank you to all the people who already contributed to Enso!