napi-rs/cli
Caleb Everett 95dd6ef485
refactor(cli): refactor js-binding to support easier bundling. (#1957)
* Refactor js-binding to support bundling single-package artifacts

The existsSync check breaks the bundlers I've tested (esbuild, webpack,
ncc), so you cannot bundle napi-rs packages that have all binarys in a
single package.

I've tested this change with both single package and multi package
libraries.

* Update snapshots

* Update CI

* Fix electron test

---------

Co-authored-by: Caleb ツ Everett <calebev@amazon.com>
Co-authored-by: LongYinan <lynweklm@gmail.com>
2024-02-26 15:46:07 +08:00
..
codegen fix(cli): copy binding files into wasi packages (#1881) 2023-12-31 15:51:46 +08:00
docs fix(cli): copy binding files into wasi packages (#1881) 2023-12-31 15:51:46 +08:00
src refactor(cli): refactor js-binding to support easier bundling. (#1957) 2024-02-26 15:46:07 +08:00
.npmignore feat(cli): new project command 2020-12-23 00:16:45 +08:00
CHANGELOG.md chore(release): publish 2024-02-22 19:01:28 +08:00
cli.mjs fix(cli): missing shebang prefix in cli entries 2023-04-06 15:34:07 +08:00
esbuild.mjs feat(cli): support @napi-rs/cross-toolchain (#1838) 2023-12-05 17:27:23 +08:00
LICENSE refactor(cli): init yarn workspace, move napi-rs package => @napi-rs/cli 2020-12-02 22:34:39 +08:00
package.json chore(release): publish 2024-02-22 19:01:28 +08:00
README.md feat(cli): brand new cli tool with both cli and programmatical usage (#1492) 2023-04-06 11:04:53 +08:00
tsconfig.json feat: integrate with emnapi (#1669) 2023-11-02 12:57:11 +08:00

@napi-rs/cli

Download Install size chat

Cli tools for napi-rs

# or npm, pnpm
yarn add @napi-rs/cli -D
yarn napi build

Commands

Command desc docs
new create new napi-rs project ./docs/new.md
build build napi-rs project ./docs/build.md
create-npm-dirs Create npm package dirs for different platforms ./docs/create-npm-dirs
artifacts Copy artifacts from Github Actions into specified dir ./docs/artifacts.md
rename Rename the napi-rs project ./docs/rename.md
universalize Combile built binaries into one universal binary ./docs/universalize.md
version Update version in created npm packages by create-npm-dirs ./docs/version.md
pre-publish Update package.json and copy addons into per platform packages ./docs/pre-publish.md

Debug mode

DEBUG="napi:*" napi [command]