Skip to content
main
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

README.md

foxql-index

inverted index database system simple implementation for foxql. this project is only use term freq.

Foxql p2p search engine project repo

Documentation

Install npm

npm i @foxql/foxql-index

Basic usage

const foxqlIndex = require('@foxql/foxql-index');

const database = new foxqlIndex();

database.pushCollection({
    collectionName : 'entrys',
    fields : [
        'title',
        'content'
    ],
    ref : 'documentId',
    schema : {
        title : {
            type : 'string',
            min : 3,
            max : 80,
            required : true
        },
        content : {
            type : 'string',
            min : 7,
            max : 500,
            required : true
        },
        documentId : {
            createField : ['title', 'content']
        }   
    }
});

Add Analyzer methods

database.useCollection('entrys').registerAnalyzer('tokenizer', (string)=>{
    return string.toLowerCase().replace(/  +/g, ' ').trim();
}); 

Add document

database.useCollection('entrys').addDoc({
    title : 'test title',
    content : 'test example content, very simple usage',
    documentId : 1
});

Search document

const results = database.useCollection('entrys').search("test query");
console.log(results);

Export Database

const dump = database.export();

Import Database

const dump = database.export();
database.import(dump);

Change analyzer methods sort

database.useCollection('entrys').registerAnalyzer('tokenizer', (string)=>{
    return string.toLowerCase().replace(/  +/g, ' ');
}); 
database.useCollection('entrys').registerAnalyzer('tokenizer2', (string)=>{
    return string.trim();
}); 

//if want aboving change methods sort

database.useCollection('entrys').analyzerSteps = [
    'tokenizer2',
    'tokenizer'
];
    

Delete document

database.useCollection('entrys').deleteDoc('ref id');

Get document by ref

database.useCollection('entrys').getDoc('ref id');

About

Javascript object based database system.

Topics

Resources

Releases

No releases published

Packages

No packages published