Expand description
This crate provides an abstraction over Command to use npm
in a simple and easy package with fluent API.
npm_rs exposes NpmEnv to configure the npm execution enviroment and
Npm to use said enviroment to execute npm commands.
§Examples
§Manual NODE_ENV setup
// build.rs
use npm_rs::*;
let exit_status = NpmEnv::default()
.with_node_env(&NodeEnv::Production)
.with_env("FOO", "bar")
.init_env()
.install(None)
.run("build")
.exec()?;§Automatic NODE_ENV setup
// build.rs
use npm_rs::*;
let exit_status = NpmEnv::default()
.with_node_env(&NodeEnv::from_cargo_profile().unwrap_or_default())
.with_env("FOO", "bar")
.init_env()
.install(None)
.run("build")
.exec()?;Structs§
- Npm
- This struct is used to execute npm commands.
Can be created from
NpmEnvof usingDefault. - NpmEnv
- This struct is used to create the enviroment in which npm will execute commands.
NpmEnvusesCommandso it takes all the env variables in your system.
Enums§
- NodeEnv
- This enum is used to determine the desired
NODE_ENVvariable value. Its value byDefaultisNodeEnv::Development