Gathering detailed insights and metrics for fuzz-run
Gathering detailed insights and metrics for fuzz-run
Gathering detailed insights and metrics for fuzz-run
Gathering detailed insights and metrics for fuzz-run
:runner: Run all your NPM scripts more easily with fuzzy matching Run all your NPM scripts more easily with fuzzy matching
npm install fuzz-run
Typescript
Module System
Min. Node Version
Node Version
NPM Version
JavaScript (100%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
MIT License
3 Stars
52 Commits
2 Watchers
1 Branches
2 Contributors
Updated on Jan 23, 2025
Latest Version
3.0.0
Package Id
fuzz-run@3.0.0
Unpacked Size
13.54 kB
Size
5.27 kB
File Count
5
NPM Version
10.2.5
Node Version
18.19.0
Published on
Jan 11, 2024
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
3
4
Run all your NPM scripts more easily with fuzzy matching.
Features:
--
to pass extra options when using NPM1npm install -g fuzz-run
1Usage: fr <fuzzy_script_name>|<action> [script_options] 2Actions: 3 -u, --update Show outdated packages and run an interactive update 4 -r, --refresh Delete node_modules and lockfile, and reinstall packages
If no arguments are provided, it will list all available scripts.
As the name of the script to run is fuzzy matched, you can try:
t
for test
scripttc
for test:ci
scriptets
for test
scriptNote that you can use the alias nr
(for npm run) instead of fr
(fuzz run) if you prefer :wink:
You can pass any arguments to your script if needed, like fr t --coverage
. You don't need to use --
to pass extra options to your script like when using npm
directly.
There are a few scripted actions you can use for common day-to-day tasks in your projects:
-u
or --update
: It will show outdated packages, then ask if you want to update. If you accept, it will first update all package within their allowed range according to your package.json
using npm update
, pnpm update
or yarn upgrade
. Then it will run an interactive update, using under the hood npx npm-check -u
if NPM or PNPM is your package manager or yarn upgrade-interactive
if you use Yarn.-r
or --refresh
: It will delete node_modules
folder and lockfile, and reinstall all your packages. I probably use that more than I should, but it's always a handy fix.Supported package managers are NPM, Yarn and PNPM.
By default, your package manager will be autodetected based on your project's lockfile format, and corresponding commands will be used.
You can also force a package manager by setting the NODE_PACKAGE_MANAGER
environment variable.
You can also integrate this script runner in your own CLI by using the function fuzzyRun(args, packageManager)
:
args
: array of arguments, the same you would use for the CLI usagepackageManager
: optional, can be 'npm'
, 'yarn'
or 'pnpm'
to force a specific command to run the scripts. If null
or undefined
, it will be autodetected based on your project's lockfile format.Example:
1const fuzzyRun = require('fuzzy-run'); 2fuzzyRun(process.argv.slice(2));
Why making a new tool when some other exists, you might ask?
Both are based on fuse.js for the fuzzy matching, which is not great for matching commands, as it doesn't weight properly specific features like subcommands separation (using characters like -
, _
, :
) or first character of words :disappointed:
Some examples:
test
and test:ci
, typing tc
matches test
instead of test:ci
test:ci
and other
, typing t
matches other
So I benchmarked many fuzzy matching libraries, and kept the best one I found suited for the job, fuzzysort, that solves these issues.
No vulnerabilities found.
Reason
no binaries found in the repo
Reason
no dangerous workflow patterns detected
Reason
license file detected
Details
Reason
dependency not pinned by hash detected -- score normalized to 2
Details
Reason
Found 0/20 approved changesets -- score normalized to 0
Reason
0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
project is not fuzzed
Details
Reason
Project has not signed or included provenance with any releases.
Details
Reason
branch protection not enabled on development/release branches
Details
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
Reason
12 existing vulnerabilities detected
Details
Score
Last Scanned on 2025-06-30
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More