all-package-names
v3.0.30
Published
Fast lookup and iteration over all NPM package names
Downloads
36,649
Maintainers
Readme
Includes a list of all package names on NPM. Updated daily, with optional local synchronization.
Packages which are deleted from NPM are removed from this list.
Installation
npm install all-package-namesyarn add all-package-namespnpm add all-package-namesbun add all-package-namesUsage
Uses binary search on the underlying dataset to quickly check for existence or iterate over packages with a given prefix without having to load the entire list into memory. However, the full list can also be loaded as a string array.
API
Check if a package exists without loading the full array:
import allPackageNames from "all-package-names";
console.log(await allPackageNames.has("react")); // trueIterate packages by prefix:
import allPackageNames from "all-package-names";
for await (const name of allPackageNames.iterPrefix("@types/")) {
console.log(name);
}Load all names into memory as a string array:
import allPackageNames from "all-package-names";
const names = await allPackageNames.toArray();Refresh the local files from the npm replication feed:
import allPackageNames from "all-package-names";
const result = await allPackageNames.refresh();
console.log(result);CLI
Stream, query, and maintain the all-package-names dataset
Usage: all-package-names [options] [command]
Options:
-p, --prefix [prefix] Only output package names with this prefix
-v, --version Display version
-h, --help Display help for command
Commands:
has <name> Check whether a package name exists
sync Sync the local dataset from the npm replication feed
bootstrap Restore the local dataset from the latest GitHub releaseStream every package name, one per line:
all-package-namesOnly stream names with a given prefix:
all-package-names --prefix @types/This is useful for piping to other programs, for example:
all-package-names --prefix @types/ | grep reacthas
Check whether a package exists with the has subcommand:
all-package-names has reactMIT - MIT License
Related Packages
- package-name-conflict: Check if NPM package names conflict
- is-name-taken: Check if an NPM package name is taken
- npms-io-client: Isomorphic typed client for npms.io
- npm-pd: A CLI dashboard for NPM publishers
