@pane-app/cli 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +55 -32
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -1,31 +1,8 @@
1
1
  # @pane-app/cli
2
2
 
3
- Pane's command-line tool for extension authors: `pane-ext`, which creates,
3
+ `pane-ext` is Pane's command-line tool for extension authors. It creates,
4
4
  develops, checks and packs an extension package from the terminal, beside
5
- the Pane app. `pane-ext new` writes a package from a template; `pane-ext
6
- dev` builds a package here (cargo's and tsc's and
7
- esbuild's errors appear here) and hands each build to the running Pane;
8
- `pane-ext check` reports everything Pane would refuse at install, with
9
- Pane's own messages; `pane-ext pack` builds the release components and
10
- assembles what users download.
11
-
12
- This package holds only a small JavaScript shim (as esbuild, biome and
13
- turbo ship their tools). The `pane-ext` program itself is native, so each
14
- system gets it from one of this package's `optionalDependencies` —
15
- `@pane-app/cli-<target>`, one per platform: `cli-linux-x86_64`,
16
- `cli-linux-aarch64`, `cli-windows-x86_64`, `cli-windows-aarch64`,
17
- `cli-macos-x86_64`, `cli-macos-aarch64`. npm installs the one whose `os`
18
- and `cpu` match, and the shim runs the program it holds. If no platform
19
- package matches your system, or npm skipped one after a failed install,
20
- the shim says so and points at the fix (`npm install @pane-app/cli
21
- --force`).
22
-
23
- A JavaScript or TypeScript package needs nothing but Node.js and npm:
24
- `pane-ext` carries the componentizer (Pane's patched componentize-qjs,
25
- building WASI 0.3 components), the QuickJS `runtime.wasm` and the WASI 0.3
26
- `libc.so` in the platform package, and takes esbuild as an ordinary
27
- dependency here. A Rust package needs rustup's stable toolchain with the
28
- `wasm32-wasip2` target and the `pane-extension` SDK from crates.io.
5
+ the Pane app.
29
6
 
30
7
  ## Installing
31
8
 
@@ -37,16 +14,62 @@ npx pane-ext dev # or a script: "dev": "pane-ext dev"
37
14
  The platform packages release in lockstep with this one, at the same
38
15
  version, so an install always matches.
39
16
 
17
+ ## Commands
18
+
19
+ - `pane-ext new` writes a package from a template.
20
+ - `pane-ext dev` builds a package in the terminal, so cargo's, tsc's and
21
+ esbuild's errors appear there, and hands each build to the running Pane.
22
+ - `pane-ext check` reports everything Pane would refuse at install, with
23
+ Pane's own messages.
24
+ - `pane-ext pack` builds the release components and assembles what users
25
+ download.
26
+
27
+ ## What you need
28
+
29
+ A JavaScript or TypeScript package needs nothing but Node.js and npm.
30
+ `pane-ext` carries the componentizer (Pane's patched componentize-qjs,
31
+ which builds WASI 0.3 components), the QuickJS `runtime.wasm` and the
32
+ WASI 0.3 `libc.so` in the platform package. It takes esbuild as an
33
+ ordinary dependency of this package.
34
+
35
+ A Rust package needs rustup's stable toolchain with the `wasm32-wasip2`
36
+ target, and the `pane-extension` SDK from crates.io.
37
+
38
+ ## How the program reaches your system
39
+
40
+ This package holds only a small JavaScript shim, the way esbuild, biome
41
+ and turbo ship their tools. The `pane-ext` program itself is native. Each
42
+ system gets it from one of this package's `optionalDependencies`,
43
+ `@pane-app/cli-<target>`, one per platform:
44
+
45
+ - `cli-linux-x86_64`
46
+ - `cli-linux-aarch64`
47
+ - `cli-windows-x86_64`
48
+ - `cli-windows-aarch64`
49
+ - `cli-macos-x86_64`
50
+ - `cli-macos-aarch64`
51
+
52
+ npm installs the one whose `os` and `cpu` match, and the shim runs the
53
+ program it holds.
54
+
55
+ If no platform package matches your system, or npm skipped one after a
56
+ failed install, the shim says so and points at the fix:
57
+
58
+ ```sh
59
+ npm install @pane-app/cli --force
60
+ ```
61
+
40
62
  ## Versions and publishing
41
63
 
42
- The version follows the extension API and the tool together. The packages
43
- are built and packed by the repository's `cli-packages` workflow (run
44
- `cargo xtask cli-package` to assemble them); publishing them is a person's
45
- step, never CI's.
64
+ The version follows the extension API and the tool together.
65
+
66
+ The repository's `cli-packages` workflow builds and packs the packages
67
+ (run `cargo xtask cli-package` to assemble them). Publishing them is a
68
+ person's step, never CI's.
46
69
 
47
70
  ## Licensing
48
71
 
49
72
  Pane's own files here are GPL-3.0-or-later (see `LICENSE-GPL`), like the
50
- `pane-ext` program the platform packages carry. The platform packages also
51
- carry the componentizer, which is Apache-2.0, and the wasm parts, whose
52
- licences their README records.
73
+ `pane-ext` program the platform packages carry. The platform packages
74
+ also carry the componentizer, which is Apache-2.0, and the wasm parts,
75
+ whose licences their README records.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pane-app/cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Pane's command-line tool for extension authors: pane-ext creates, develops, checks and packs an extension package, and builds JavaScript and TypeScript with nothing but Node.js and npm",
5
5
  "keywords": [
6
6
  "pane",
@@ -28,12 +28,12 @@
28
28
  "esbuild": "0.28.2"
29
29
  },
30
30
  "optionalDependencies": {
31
- "@pane-app/cli-linux-x86_64": "0.1.0",
32
- "@pane-app/cli-linux-aarch64": "0.1.0",
33
- "@pane-app/cli-windows-x86_64": "0.1.0",
34
- "@pane-app/cli-windows-aarch64": "0.1.0",
35
- "@pane-app/cli-macos-x86_64": "0.1.0",
36
- "@pane-app/cli-macos-aarch64": "0.1.0"
31
+ "@pane-app/cli-linux-x86_64": "0.1.1",
32
+ "@pane-app/cli-linux-aarch64": "0.1.1",
33
+ "@pane-app/cli-windows-x86_64": "0.1.1",
34
+ "@pane-app/cli-windows-aarch64": "0.1.1",
35
+ "@pane-app/cli-macos-x86_64": "0.1.1",
36
+ "@pane-app/cli-macos-aarch64": "0.1.1"
37
37
  },
38
38
  "files": [
39
39
  "bin/pane-ext.js",