herdr-dashr 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 (3) hide show
  1. package/README.md +16 -9
  2. package/bin.js +12 -11
  3. package/package.json +6 -5
package/README.md CHANGED
@@ -26,23 +26,30 @@ agent underneath to reshape it.
26
26
 
27
27
  `docs/PRD.md` is the authoritative specification and delivery ledger.
28
28
 
29
- **Status:** v0.1.0, the first public release. All but one PRD requirement verified (the first npm publish comes with this release), most by an end-to-end
29
+ **Status:** v0.1.1, on GitHub and npm, for Linux, macOS and Windows. Windows support is new; everything else is verified, most by an end-to-end
30
30
  suite that runs a real Herdr, a real Grafana and terminal-browser in CI.
31
31
 
32
32
  ## Install
33
33
 
34
+ Linux, macOS and Windows:
35
+
34
36
  ```bash
35
37
  herdr plugin install czinegeroland/herdr-dashr
36
38
  ```
37
39
 
38
- The build step installs the prebuilt `dashr` binary for your platform — from
39
- npm (`herdr-dashr`), whose platform packages were verified against the
40
- release's SHA-256 before they were packed; failing that from the GitHub
41
- release, verified the same way; and only as a last resort with `cargo`. No
42
- Rust toolchain is needed. `DASHR_INSTALL_SOURCE=npm|github|source` forces one. You need
43
- Docker. terminal-browser (for the real Grafana UI; it refuses to run as root), Claude Code (the chat
44
- pane) and the AWS CLI (CodePipeline, CloudWatch) are optional — run the
45
- **Check dashr prerequisites** action to see what is missing.
40
+ The build step runs `npm install herdr-dashr@<version>` in the plugin
41
+ directory, as herdr-remote-channel does: npm installs the one platform
42
+ package whose prebuilt `dashr` matches your machine (verified against the
43
+ release's SHA-256 before it was packed), and every Herdr entry point runs it
44
+ through `node node_modules/herdr-dashr/bin.js`. You need Node.js 18+ and
45
+ Docker; no Rust toolchain. terminal-browser (for the real Grafana UI; it
46
+ refuses to run as root), Claude Code (the chat pane) and the AWS CLI
47
+ (CodePipeline, CloudWatch) are optional — run the **Check dashr
48
+ prerequisites** action to see what is missing.
49
+
50
+ On Windows, Docker Desktop must be running, and the chat pane's shell is
51
+ PowerShell. Without terminal-browser the dashboard pane shows the Grafana URL;
52
+ Ctrl-click it to open Grafana in your browser.
46
53
 
47
54
  ### The CLI on its own
48
55
 
package/bin.js CHANGED
@@ -16,16 +16,18 @@ import { fileURLToPath } from 'node:url'
16
16
  import { dirname, join, sep } from 'node:path'
17
17
 
18
18
  const require = createRequire(import.meta.url)
19
- const binary = 'dashr'
19
+ const binary = process.platform === 'win32' ? 'dashr.exe' : 'dashr'
20
20
 
21
- // Keep in step with `scripts/build-npm-packages.mjs`, `scripts/install.sh`
22
- // and the release matrix; `crates/dashr-cli/tests/distribution.rs` holds them
23
- // together.
21
+ // The package holding each platform's executable. Keep in step with
22
+ // `scripts/build-npm-packages.mjs` (Windows is scoped there, see why),
23
+ // `scripts/install.sh` and the release matrix;
24
+ // `crates/dashr-cli/tests/distribution.rs` holds them together.
24
25
  const PACKAGES = {
25
- 'linux x64': 'linux-x64',
26
- 'linux arm64': 'linux-arm64',
27
- 'darwin x64': 'darwin-x64',
28
- 'darwin arm64': 'darwin-arm64',
26
+ 'linux x64': 'herdr-dashr-linux-x64',
27
+ 'linux arm64': 'herdr-dashr-linux-arm64',
28
+ 'darwin x64': 'herdr-dashr-darwin-x64',
29
+ 'darwin arm64': 'herdr-dashr-darwin-arm64',
30
+ 'win32 x64': '@czinegeroland/herdr-dashr-win32-x64',
29
31
  }
30
32
 
31
33
  // Run from `npm/dashr` inside a source checkout (a symlinked
@@ -51,8 +53,8 @@ if (here.endsWith(`${sep}npm${sep}dashr`)) {
51
53
  // The prebuilt executable npm installed for this platform.
52
54
  function published() {
53
55
  const key = `${process.platform} ${process.arch}`
54
- const suffix = PACKAGES[key]
55
- if (!suffix) {
56
+ const pkg = PACKAGES[key]
57
+ if (!pkg) {
56
58
  console.error(
57
59
  `dashr: no prebuilt binary for ${key}.\n` +
58
60
  `Supported: ${Object.keys(PACKAGES).join(', ')}.\n` +
@@ -60,7 +62,6 @@ function published() {
60
62
  )
61
63
  process.exit(1)
62
64
  }
63
- const pkg = `herdr-dashr-${suffix}`
64
65
  try {
65
66
  return require.resolve(`${pkg}/${binary}`)
66
67
  } catch {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "herdr-dashr",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Agent-built, live Grafana dashboards in a Herdr pane, with masking between your data and the agent.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -26,10 +26,11 @@
26
26
  "README.md"
27
27
  ],
28
28
  "optionalDependencies": {
29
- "herdr-dashr-linux-x64": "0.1.0",
30
- "herdr-dashr-linux-arm64": "0.1.0",
31
- "herdr-dashr-darwin-x64": "0.1.0",
32
- "herdr-dashr-darwin-arm64": "0.1.0"
29
+ "herdr-dashr-linux-x64": "0.1.1",
30
+ "herdr-dashr-linux-arm64": "0.1.1",
31
+ "herdr-dashr-darwin-x64": "0.1.1",
32
+ "herdr-dashr-darwin-arm64": "0.1.1",
33
+ "@czinegeroland/herdr-dashr-win32-x64": "0.1.1"
33
34
  },
34
35
  "engines": {
35
36
  "node": ">=18"