Skip to content

An adapter to support Typesense in schranz-search/seal search abstraction. Part of the https://github.com/schranz-search/schranz-search project. READ-ONLY Repository

License

Notifications You must be signed in to change notification settings

schranz-search/seal-typesense-adapter

Repository files navigation

Schranz Search Logo with a Seal on it with a magnifying glass
Logo created by Meine Wilma

SEAL
Typesense Adapter



The TypesenseAdapter write the documents into a Typesense server instance.

Note: This is part of the schranz-search/schranz-search project create issues in the main repository.

Note: This project is heavily under development and any feedback is greatly appreciated.

Installation

Use composer for install the package:

composer require schranz-search/seal schranz-search/seal-typesense-adapter

Usage.

The following code shows how to create an Engine using this Adapter:

<?php

use Http\Client\Curl\Client as CurlClient;
use Http\Discovery\Psr17FactoryDiscovery;
use Schranz\Search\SEAL\Adapter\Typesense\TypesenseAdapter;
use Schranz\Search\SEAL\Engine;
use Typesense\Client;

$client = new Client(
    [
        'api_key' => 'S3CR3T',
        'nodes' => [
            [
                'host' => '127.0.0.1',
                'port' => '8108',
                'protocol' => 'http',
            ],
        ],
        'client' => new CurlClient(Psr17FactoryDiscovery::findResponseFactory(), Psr17FactoryDiscovery::findStreamFactory()),
    ]
);

$engine = new Engine(
    new TypesenseAdapter($client),
    $schema,
);

Via DSN for your favorite framework:

typesense://[email protected]:8108

Authors