Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
904f63e
Auto generating npm commands and docs
nmetulev Feb 20, 2026
0b4fc83
fixing codeql errors
nmetulev Feb 20, 2026
a0ced9b
Merge branch 'main' into nmetulev/npm-func
nmetulev Feb 20, 2026
efee76e
Addressing pr feedback
nmetulev Feb 20, 2026
c8ce13a
Merge branch 'main' into nmetulev/npm-func
azchohfi Feb 21, 2026
db54a15
Merge branch 'main' into nmetulev/npm-func
nmetulev Feb 21, 2026
d031d85
run npm command code generation during cli build
nmetulev Feb 21, 2026
a109ef7
Merge branch 'main' into nmetulev/npm-func
nmetulev Feb 24, 2026
42e078f
Merge branch 'main' into nmetulev/npm-func
nmetulev Feb 24, 2026
eb0ebf1
Merge branch 'main' into nmetulev/npm-func
nmetulev Feb 25, 2026
7cd991a
Merge branch 'main' into nmetulev/npm-func
nmetulev Feb 27, 2026
badaa65
Merge branch 'main' into nmetulev/npm-func
nmetulev Mar 4, 2026
35b9549
Fixed build.
azchohfi Mar 4, 2026
4e69f4c
Merge branch 'main' into nmetulev/npm-func
azchohfi Mar 4, 2026
f67bb62
Merge branch 'main' into nmetulev/npm-func
azchohfi Mar 4, 2026
9689a01
merging main
nmetulev Mar 5, 2026
8b70195
new job for doc validation
nmetulev Mar 5, 2026
ae65ba0
fix tests
nmetulev Mar 5, 2026
5fa017a
Merge branch 'main' into nmetulev/npm-func
nmetulev Mar 5, 2026
361cc25
fix doc validation
nmetulev Mar 5, 2026
87f78c9
updating skills
nmetulev Mar 5, 2026
fa9b973
fix validation
nmetulev Mar 5, 2026
cc12584
fix skipped tests
nmetulev Mar 5, 2026
36b2ada
Merge branch 'main' into nmetulev/npm-func
nmetulev Mar 6, 2026
54f9ad0
Enhance end-to-end tests for VisualElements tag handling and add vali…
azchohfi Mar 6, 2026
d08ce86
update tests
nmetulev Mar 6, 2026
901b6da
Merge branch 'main' into nmetulev/npm-func
nmetulev Mar 6, 2026
18cbd5b
clean up build script
nmetulev Mar 6, 2026
ef85c07
Merge branch 'nmetulev/npm-func' of https://github.com/microsoft/wina…
nmetulev Mar 6, 2026
3fb6706
undo build clean up
nmetulev Mar 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ npx winapp --help
- [`node clear-electron-debug-identity`](./docs/usage.md#node-clear-electron-debug-identity) - Remove identity from Electron processes

The full CLI usage can be found here: [Documentation](/docs/usage.md)

The full NPM usage can be found here: [NPM Programmatic API Reference](/docs/npm-usage.md)

## 🧾 Samples

Expand Down
83 changes: 83 additions & 0 deletions docs/fragments/node-commands.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
## Node.js CLI commands

These commands are available exclusively via `npx winapp node <subcommand>` and are not exported as programmatic functions.

### `node create-addon`

Generate native addon files for an Electron project. Supports C++ (node-gyp) and C# (node-api-dotnet) templates.

```bash
npx winapp node create-addon [options]
```

**Options:**

| Flag | Description |
|------|-------------|
| `--name <name>` | Addon name (default depends on template) |
| `--template <type>` | Addon template: `cpp` or `cs` (default: `cpp`) |
| `--verbose` | Enable verbose output |

> **Note:** Must be run from the root of an Electron project (directory containing `package.json`).

**Examples:**

```bash
npx winapp node create-addon
npx winapp node create-addon --name myAddon
npx winapp node create-addon --template cs --name MyCsAddon
```

---

### `node add-electron-debug-identity`

Add package identity to the Electron debug process using sparse packaging. Creates a backup of `electron.exe`, generates a sparse MSIX manifest, adds identity to the executable, and registers the sparse package. Requires an `appxmanifest.xml` (create one with `winapp init` or `winapp manifest generate`).

```bash
npx winapp node add-electron-debug-identity [options]
```

**Options:**

| Flag | Description |
|------|-------------|
| `--manifest <path>` | Path to custom `appxmanifest.xml` (default: `appxmanifest.xml` in current directory) |
| `--no-install` | Do not install the package after creation |
| `--keep-identity` | Keep the manifest identity as-is, without appending `.debug` suffix |
| `--verbose` | Enable verbose output |

> **Note:** Must be run from the root of an Electron project (directory containing `node_modules/electron`). To undo, use `npx winapp node clear-electron-debug-identity`.

**Examples:**

```bash
npx winapp node add-electron-debug-identity
npx winapp node add-electron-debug-identity --manifest ./custom/appxmanifest.xml
```

---

### `node clear-electron-debug-identity`

Remove package identity from the Electron debug process. Restores `electron.exe` from the backup created by `add-electron-debug-identity` and removes the backup files.

```bash
npx winapp node clear-electron-debug-identity [options]
```

**Options:**

| Flag | Description |
|------|-------------|
| `--verbose` | Enable verbose output |

> **Note:** Must be run from the root of an Electron project (directory containing `node_modules/electron`).

**Examples:**

```bash
npx winapp node clear-electron-debug-identity
```

---
Loading