Security News
Combatting Alert Fatigue by Prioritizing Malicious Intent
In 2023, data breaches surged 78% from zero-day and supply chain attacks, but developers are still buried under alerts that are unable to prevent these threats.
cli-fuzzy-search
Advanced tools
draftlog
for dynamic outputInstall as usually with npm install --save cli-fuzzy-search
or yarn add cli-fuzzy-search
.
Most basic usage is with a fully loaded data-source and default options:
const search = require('cli-fuzzy-search')
const options = { data: myDataset }
search(options)
.then(item => …)
.catch(err => …)
{
stdin: process.stdin, // User input stream, must be a tty.ReadStream
size: 10, // Number of shown results
debounceDelay: 300, // Delay between last keystroke and actually filtering results
data: promisedDataset, // Promise([ { label, … } ])
// or
search: searchFunction, // (q: String, page: Number) => Promise({ more: Boolean, total: Number, data: Array })
fuzzyOnSearch: false, // Apply fuzzy filter on dataset returned by search(), if your search results really suck
cache: true // Cache previous search results in memory
}
You must provide data
or search
:
data
: the whole (or promise of) dataset, an array of objects with following properties:
label
: the string showed in listsearch
: a function for asynchronous paginated search results:
more
: if true it means there are more pages, so when user reaches the end of the list the function will be called again with incremented page number to fetch the rest (until hasMore
is falsy)total
: total number of resultsdata
: the dataset, see aboveThe eventually returned item is a copy of dataset's item. If fuzzy filter was applied, additional properties will be added:
highlight
: fuzzy-matching highlighted charactersindex
: position (starting at 0) in the filtered listSee sample usages in samples folder.
It's mainly for demo purpose but I guess you could find some use.
Install with npm install -g cli-fuzzy-search
(or yarn global add cli-fuzzy-search
).
search-json <path to file> [nb shown results]
Your JSON file must be an array of objects, each one with at least a label
key, see sample file in this repository.
FAQs
CLI library to provide a fuzzy search box with suggestions
The npm package cli-fuzzy-search receives a total of 106 weekly downloads. As such, cli-fuzzy-search popularity was classified as not popular.
We found that cli-fuzzy-search demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
In 2023, data breaches surged 78% from zero-day and supply chain attacks, but developers are still buried under alerts that are unable to prevent these threats.
Security News
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
Security News
License exceptions modify the terms of open source licenses, impacting how software can be used, modified, and distributed. Developers should be aware of the legal implications of these exceptions.