Plugin for setuptools to run npm commands.
This command provides npm_install and npm_run commands.
Run python setup.py npm_install --help or python setup.py npm_run --help for available options.
npm_not_skipped is a helper function that can be used as predicate for distutils subcommand. It evaluates to True if env variable SKIP_NPM is not defined. This variable is exclusive to this helper function and is not evaluated in npm_install and npm_run commands themselves.
Let's say you have defined build command in package.json and you'd like to run npm clean-install and npm run build each time you run setup.py build. You'd configure your project like this:
# pyproject.toml [build-system] requires = ["setuptools", "setuptools-npm"] build-backend = "setuptools.build_meta"
# setup.py from distutils.command.build import build from setuptools import setup from setuptools_npm import npm_not_skipped class custom_build(build): sub_commands = [ ('npm_install', npm_not_skipped), ('npm_run', npm_not_skipped), ] + build.sub_commands setup(cmdclass={'build': custom_build, 'sdist': custom_sdist})
# setup.cfg [npm_run] script = build