.github/workflows | Loading last commit info... | |
src | ||
stuff | ||
.gitignore | ||
CHANGELOG.md | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
package.json |
dum replaces npm run
and npx
.
Instead of waiting 200ms for your npm client to start, it will start immediately.
💛 You can help the author become a full-time open-source maintainer by sponsoring him on GitHub.
How
This is written in Rust! (Or any compile-to-native language).
Install
If you are a Mac user, install it with Homebrew:
brew install egoist/tap/dum
If you are a Rust user:
cargo install dum
Or download a release and move it to /usr/local/bin
manually.
PR welcome for adding a shell script so you can install dum
with a single curl
command.
Usage
dum <npm_script|bin_script> [...args_to_forward]
: Run npm scripts or scripts in node_modules/.bin
, like yarn run
, npm run
, `npx.
If you want to pass flags to dum
itself, like the -c
flag to change directory, you should put it before the script name, like dum -c another/directory script_name --forward some_flag
.
Examples:
dum some-npm-script
dum some-npm-script --flags will --be forwarded
# Like npx, but mush faster
dum some-npm-package-cli-name --flags will --be forwarded
# Change working directory
dum -c packages/sub-package build
# More
dum --help
Install Packages
Dum is not a package manager yet, but we forward install
, add
, remove
commands to npm, pnpm and yarn automatically:
# Run `npm i` or `yarn` or `pnpm i` depending on the project
dum install # or `dum i`
# Like above but add packages
dum add react vue -D
dum remove react vue
Limitations
- package.json vars are not supported, I personally never used it, if you believe it's necessary, please leave a comment here.
Inspiration
I want to try and learn Rust so I made this. Inspired by bun.
Sponsors
License
MIT © EGOIST