Cozy Node Indexer
OPTIONS =docType:filter: truetags:filter: truetitle:nGramLength: 1stemming: trueweight: 5fieldedSearch: truecontent:nGramLength: gte: 1lte: 2stemming: trueweight: 1fieldedSearch: falseDOC ="_id":"fake_id_note_eng""docType": "Note""title": "Hello world""content": "This is an english note with some information.""tags": "tagA""tagged"indexeraddBatch DOCOPTIONScallbackQUERY_OPTIONS =query:"*": "cozy" # search cozy in all fields"title":"indexing" # AND indexing in titlepageSize: 5 # 5 docs per pageoffset: 2 # 2nd pagefacets:docType:filter:date: # search something at the end of this or last month'2015-10-25''2015-10-30''2015-11-25''2015-11-30'indexersearch QUERY_OPTIONSresultstotalHits === 16 # total number of matching docsresultshits ===id: "docid"id: "docid2"...# ids of the 5 docs in 2nd pageresultsfacets0=== key: 'docType'value:key: 'note'value: 3key: 'file'value: 13# there is 13 file and 3 note matching our query
Used libraries limitations and effects
The following problems have been encoutered with search-index
- No hook for tokenization : force us to .split(natural).join(separator) so that search-index can .split(separator)
- No OR request : would allow to just stem text and perform a double query if we cant guess the language of the query
flatiron/cradle in the ds, investigate using the
rawoptions of cradle
The following problems have been encoutered with natural
- no german stemmer
This library is a replacement for it, the former indexer is not used anymore by the Data System and can be safely uninstalled.
git clone https://github.com/cozy/cozy-indexer.git cd cozy-indexer npm install # make changes in ./src npm run build
npm run test
Cozy Data System is developed by Cozy Cloud and distributed under the AGPL v3 license.
What is Cozy?
Cozy is a platform that brings all your web services in the same private space. With it, your web apps and your devices can share data easily, providing you with a new experience. You can install Cozy on your own hardware where no one profiles you.
You can reach the Cozy Community by: