qiitable
v2.0.0
Published
Parse Qiita-like search queries
Downloads
499
Maintainers
Readme
Qiitable
Qiitable is a Node.JS module to parse Qiita-like search queries.
This module is perfect for integrating complex search (like Qiita search) into your application.
Queries
| Type | Example |
| ---- | ------- |
| Query for tags | Ruby
|
| Query for multiple tags | Ruby Rails
, "Ruby on Rails"
|
| Query for equality | user:sampleuser
, user:"sample user"
|
| Query for not-equality | -user:sampleuser
|
| Query for values greater than another value | stocks:>10
, stocks:>=10
|
| Query for values less than another value | stocks:<100
, stocks:<=100
|
How to use it?
Install it using:
$ npm install qiitable
Parse a query string:
var qiitable = require("qiitable");
var query = qiitable.Query('Ruby created:>=2020-01-01').parse();
Filter and customize queries using QueryBuilder
:
var builder = qiitable.QueryBuilder();
// Define mapping, by default all fields are accepted and piped as string
builder.field('stocks', {
type: Number
});
builder.field('created', {
type: Date
});
// Reject a field
builder.reject('email');
// Parse queries (return a Query object)
builder.parse('Ruby stocks:>=10 created:>=2020-01-01')
Origin
This project started as a fork of GitbookIO/filterable.