2020-10-15 21:16:52 +09:00
# `@napi-rs/cli`
2021-08-07 01:22:53 +09:00
[![Download ](https://img.shields.io/npm/dm/@napi-rs/cli )](https://www.npmjs.com/package/@napi-rs/cli)
[![Install size ](https://packagephobia.com/badge?p=@napi-rs/cli )](https://packagephobia.com/result?p=@napi-rs/cli)
2021-08-09 23:12:10 +09:00
< a href = "https://discord.gg/SpWzYHsKHs" >
< img src = "https://img.shields.io/discord/874290842444111882.svg?logo=discord&style=flat-square"
alt="chat" />
< / a >
2021-08-07 01:22:53 +09:00
2020-10-15 21:16:52 +09:00
> Cli tools for napi-rs
## Commands
### Debug mode
```bash
DEBUG="napi:*" napi [command]
```
### `napi build`
> Build command. Build rust codes and copy the dynamic lib binary file to the dist dir.
#### `--platform`
> default `false`
Append `platform-arch-[abi]` name to dist file. eg: `index.darwin-x64.node` .
#### `--release`
> default `false`
Is release build. This flag will be passed to `Cargo` directly.
#### `--features`
> default `''`
Cargo features, passthrough to `cargo build` command.
#### `--config,-c`
> default `package.json`
`napi-rs` config file name. `napi-rs` config example :
```js
{
"name": "@native-binding/fib",
"version": "0.1.0",
"napi": {
"name": "fib", // binary name
"triples": {
"defaults": true, // default true, if this value is true, will build `x86_64-pc-windows-msvc` , `x86_64-apple-darwin` and `x86_64-unknown-linux-gnu`
"addition": [
"x86_64-unknown-linux-musl",
"x86_64-unknown-freebsd",
"aarch64-unknown-linux-gnu"
]
}
}
}
```
#### `--cargo-name`
> default `undefined`
If not set, cli will read the `package.name` field in `Cargo.toml` under `process.cwd()` . The `-` in the name will be replaced with `_` .
#### `--target`
> default `undefined`
2021-12-17 18:31:09 +09:00
> Note you should have `rustup` installed if omit the `--target` flag. The `@napi-rs/cli` will try to find the default target on your system via `rustup` if no `--target` specified.
2021-04-19 00:52:28 +09:00
You can also define this value using the `RUST_TARGET` environment variable.
2020-10-15 21:16:52 +09:00
This value will be passed to `Cargo build` command directly. eg: `napi build --target x86_64-unknown-linux-musl`
#### `--cargo-flags`
> default `undefined`
Other flags you want pass to `Cargo build` .
2021-04-19 00:52:28 +09:00
#### `--cargo-cwd`
> default `undefined`
This flag can be used to build binaries that are not in the current directory. The path that is passed to this flag should be relative to the current directory.
2020-10-15 21:16:52 +09:00
### `napi artifacts`
> Copy artifact files in Github actions.