Appearance
FlexSearch is highly customizable. Make use of the right options can really improve your results as well as memory economy and query time. ## Index Options
Option | Values | Description | Default |
---|---|---|---|
preset | "memory" "performance" "match" "score" "default" | The configuration profile as a shortcut or as a base for your custom settings. | "default" |
tokenize | "strict" "forward" "reverse" "full" | The indexing mode (tokenizer). Choose one of the built-ins or pass a custom tokenizer function. | "strict" |
cache | Boolean Number | Enable/Disable and/or set capacity of cached entries. When passing a number as a limit the cache automatically balance stored entries related to their popularity. Note: When just using "true" the cache has no limits and growth unbounded. | false |
resolution | Number | Sets the scoring resolution (default: 9). | 9 |
context | Boolean Context Options | Enable/Disable contextual indexing. When passing "true" as value it will take the default values for the context. | false |
optimize | Boolean | When enabled it uses a memory-optimized stack flow for the index. | true |
boost | function(arr, str, int) => float | A custom boost function used when indexing contents to the index. The function has this signature: Function(words[], term, index) => Float . It has 3 parameters where you get an array of all words, the current term and the current index where the term is placed in the word array. You can apply your own calculation e.g. the occurrences of a term and return this factor (<1 means relevance is lowered, >1 means relevance is increased). Note: this feature is currently limited by using the tokenizer "strict" only. | null |
Language-specific Options and Encoding: | |||
charset | Charset Payload String (key) | Provide a custom charset payload or pass one of the keys of built-in charsets. | "latin" |
language | Language Payload String (key) | Provide a custom language payload or pass in language shorthand flag (ISO-3166) of built-in languages. | null |
encode | false "default" "simple" "balance" "advanced" "extra" function(str) => [words] | The encoding type. Choose one of the built-ins or pass a custom encoding function. | "default" |
stemmer | false String Function | false | |
filter | false String Function | false | |
matcher | false String Function | false | |
Additional Options for Document Indexes: | |||
worker | Boolean | Enable/Disable and set count of running worker threads. | false |
document | Document Descriptor | Includes definitions for the document index and storage. |
Context Options #
Option | Values | Description | Default |
---|---|---|---|
resolution | Number | Sets the scoring resolution for the context (default: 1). | 1 |
depth | false Number | Enable/Disable contextual indexing and also sets contextual distance of relevance. Depth is the maximum number of words/tokens away a term to be considered as relevant. | 1 |
bidirectional | Boolean | Sets the scoring resolution (default: 9). | true |
Document Options #
Option | Values | Description | Default |
---|---|---|---|
id | String | "id"" | |
tag | false String | "tag" | |
index | String Array<String> Array<Object> | ||
store | Boolean String Array<String> | false |
Charset Options #
Option | Values | Description | Default |
---|---|---|---|
split | false RegExp String | The rule to split words when using non-custom tokenizer (built-ins e.g. "forward"). Use a string/char or use a regular expression (default: /\W+/ ). | /[\W_]+/ |
rtl | Boolean | Enables Right-To-Left encoding. | false |
encode | function(str) => [words] | The custom encoding function. | /lang/latin/default.js |
Language Options #
Option | Values | Description |
---|---|---|
stemmer | false String Function | Disable or pass in language shorthand flag (ISO-3166) or a custom object. |
filter | false String Function | Disable or pass in language shorthand flag (ISO-3166) or a custom array. |
matcher | false String Function | Disable or pass in language shorthand flag (ISO-3166) or a custom array. |
Search Options #
Option | Values | Description | Default |
---|---|---|---|
limit | number | Sets the limit of results. | 100 |
offset | number | Apply offset (skip items). | 0 |
suggest | Boolean | Enables suggestions in results. | false |
Document Search Options - Additionally, to the Index search options above. #
Option | Values | Description | Default |
---|---|---|---|
index | String Array<String> Array<Object> | Sets the document fields which should be searched. When no field is set, all fields will be searched. Custom options per field are also supported. | |
tag | String Array<String> | Sets the document fields which should be searched. When no field is set, all fields will be searched. Custom options per field are also supported. | false |
enrich | Boolean | Enrich IDs from the results with the corresponding documents. | false |
bool | "and" "or" | Sets the used logical operator when searching through multiple fields or tags. | "or" |