Socket
Socket
Sign inDemoInstall

datwd

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

datwd

Get all Node dependencies required by a subset of top-level dependencies


Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

Dependencies All the Way Down 🐢🐢🐢🐢🐢🐢🐢🐢🐢🌀

Easily get a list of all Node subdependencies for your top-level dependencies

Get Started

Install:

yarn add --dev datwd or npm install --dev datwd

Make sure the npm CLI is available and your dependencies are all installed. Then:

const getDependencies = require('datwd')
const allDeps = getDependencies(['some-package', '@another/package'])

Why?

webpack-node-externals

The primary use case this was built for was to support easier configuration for webpack-node-externals. The allowList property in nodeExternals will whitelist top-level Node dependencies but will ignore subdependencies down the tree (see: Stack Overflow question, webpack-node-externals issue #72. Consequently, by default, your package might ship with missing subdependencies you depend on.

Rather than manually whitelist dependencies and subdependencies (and sub-subdependencies...), use DATWD:

// webpack.config.js
const nodeExternals = require('webpack-node-externals')
const includeSubdependencies = require('datwd')

module.exports = {
  // ...
  externals: [
    nodeExternals({
      // Will include "cookies" and its dependencies; for example:
      // `['cookies', 'depd', 'keygrip', 'tsscmp']`
      allowlist: includeSubdependencies(['cookies'])
    })
  ]
}
Use NPM or Yarn

In many cases, you likely don't want to use DATWD. Instead, rely on the dependency tree from yarn list or npm ls.

Other use cases?

Please open a discussion if you've found DATWD useful in other situations!

FAQs

Package last updated on 11 Aug 2022

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc