What is npm-bundled?
The npm-bundled package is a utility that lists all the packages that have been bundled in a given package. It is particularly useful for analyzing and managing dependencies in Node.js projects, ensuring that you understand which packages are included in your bundle.
What are npm-bundled's main functionalities?
List bundled packages
This feature allows you to list all npm packages that are bundled within a specific project. The function takes a path to the project and a callback function that receives an error or the list of bundled packages.
const npmBundled = require('npm-bundled');
npmBundled({ path: '/path/to/your/project' }, function (err, list) {
if (err) {
console.error('Error:', err);
return;
}
console.log('Bundled packages:', list);
});
Other packages similar to npm-bundled
depcheck
Depcheck is a tool for analyzing the dependencies in your Node.js project to see which ones are used, unused, or missing. It differs from npm-bundled in that it provides a broader analysis of dependency usage rather than just listing bundled packages.
npm-check
Npm-check provides a way to check for outdated, incorrect, and unused dependencies. It is similar to npm-bundled in that it helps manage dependencies, but it also offers features to update them and provides more detailed reports on the status of each dependency.
npm-bundled
Run this in a node package, and it'll tell you which things in
node_modules are bundledDependencies, or transitive dependencies of
bundled dependencies.
USAGE
To get the list of deps at the top level that are bundled (or
transitive deps of a bundled dep) run this:
const bundled = require('npm-bundled')
bundled({ path: '/path/to/pkg/defaults/to/cwd'}, (er, list) => {
})
bundled({ path: '/path/to/pkg/defaults/to/cwd'}).then(list => {
})
const list = bundled.sync({ path: '/path/to/pkg/defaults/to/cwd'})
That's basically all you need to know. If you care to dig into it,
you can also use the bundled.Walker
and bundled.WalkerSync
classes to get fancy.
This library does not write anything to the filesystem, but it may
have undefined behavior if the structure of node_modules
changes
while it's reading deps.
All symlinks are followed. This means that it can lead to surprising
results if a symlinked bundled dependency has a missing dependency
that is satisfied at the top level. Since package creation resolves
symlinks as well, this is an edge case where package creation and
development environment are not going to be aligned, and is best
avoided.