@profullstack/hqtui-demo 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.
- package/README.md +96 -0
- package/package.json +9 -3
package/README.md
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# @profullstack/hqtui-demo
|
|
2
|
+
|
|
3
|
+
The **HQTUI** reference dashboard: a btop-grade terminal system monitor built entirely
|
|
4
|
+
in TypeScript with [`@profullstack/hqtui`](https://www.npmjs.com/package/@profullstack/hqtui).
|
|
5
|
+
|
|
6
|
+
It runs on **real system metrics** on Linux, macOS and Windows — with no native
|
|
7
|
+
dependencies — or on a deterministic simulation so screenshots and benchmarks are
|
|
8
|
+
reproducible.
|
|
9
|
+
|
|
10
|
+

|
|
11
|
+
|
|
12
|
+
## Run it
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
bunx @profullstack/hqtui-demo # your real machine
|
|
16
|
+
bunx @profullstack/hqtui-demo --sim # deterministic simulation
|
|
17
|
+
|
|
18
|
+
npx @profullstack/hqtui-demo # Node 22.6+ works too
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Options
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
--sim Use the deterministic simulation instead of real metrics
|
|
25
|
+
--real Read real system metrics (default)
|
|
26
|
+
--seed <n> Simulation seed (default 1337)
|
|
27
|
+
--fps <n> Frame cap (default 30, 15 over SSH)
|
|
28
|
+
--theme <name> dark, dracula, nord, tokyoNight, gruvbox, matrix,
|
|
29
|
+
monochrome, highContrast, light
|
|
30
|
+
--screen <name> dashboard, components, graphics, themes, input, stress
|
|
31
|
+
--interval <ms> Metric refresh interval (default 1000)
|
|
32
|
+
-h, --help Show help
|
|
33
|
+
-v, --version Show the version
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Keys
|
|
37
|
+
|
|
38
|
+
| Key | Action |
|
|
39
|
+
|---|---|
|
|
40
|
+
| `1`–`6`, `Tab` | Switch screens |
|
|
41
|
+
| `F1` | Help |
|
|
42
|
+
| `F2` | Cycle theme |
|
|
43
|
+
| `F3` | Filter processes |
|
|
44
|
+
| `F6` | Change sort |
|
|
45
|
+
| `Ctrl+K` | Command palette |
|
|
46
|
+
| `Space` | Pause updates |
|
|
47
|
+
| `↑` `↓` `PgUp` `PgDn` `Home` `End` | Move selection |
|
|
48
|
+
| `Enter` | Confirmation dialog |
|
|
49
|
+
| `q`, `Ctrl+C` | Quit |
|
|
50
|
+
|
|
51
|
+
Mouse works too: click the tabs and buttons, scroll the process list.
|
|
52
|
+
|
|
53
|
+
## Screens
|
|
54
|
+
|
|
55
|
+
- **dashboard** — CPU, memory, disks, network, processes, temperatures, sensors, logs
|
|
56
|
+
- **components** — every widget in the library, interactive
|
|
57
|
+
- **graphics** — braille vs block vs ASCII, multi-series, gradients, raw canvas
|
|
58
|
+
- **themes** — all nine themes side by side, live switching
|
|
59
|
+
- **input** — keyboard and mouse event visualizer
|
|
60
|
+
- **stress** — every cell changing every frame, with live render statistics
|
|
61
|
+
|
|
62
|
+
## Where the metrics come from
|
|
63
|
+
|
|
64
|
+
| Platform | Source | Notes |
|
|
65
|
+
|---|---|---|
|
|
66
|
+
| Linux | `/proc`, `/sys`, `ps`, `df` | Everything, including per-core CPU and hwmon temperatures |
|
|
67
|
+
| macOS | `sysctl`, `vm_stat`, `top`, `netstat`, `iostat`, `ps` | Temperatures and fan speed need privileges, so they are reported as unavailable |
|
|
68
|
+
| Windows | PowerShell CIM (`Win32_*`), `Get-Process` | Temperatures are not exposed by CIM |
|
|
69
|
+
|
|
70
|
+
Anything a platform cannot provide is reported as **unavailable** rather than
|
|
71
|
+
fabricated — press `F1` to see the list for your machine. Run with `--sim` to see every
|
|
72
|
+
widget populated.
|
|
73
|
+
|
|
74
|
+
The demo reads only. It never writes files, makes network requests, or passes input to
|
|
75
|
+
a shell. The library it is built on has zero runtime dependencies and touches nothing.
|
|
76
|
+
|
|
77
|
+
## Build your own
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
bun add @profullstack/hqtui
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
```ts
|
|
84
|
+
import { createApp } from "@profullstack/hqtui";
|
|
85
|
+
|
|
86
|
+
const app = await createApp();
|
|
87
|
+
|
|
88
|
+
app.render(({ ui }) => {
|
|
89
|
+
ui.panel({ title: "Hello" }, (panel) => panel.text("Hello, terminal."));
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
await app.start();
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Docs at [hqtui.com](https://hqtui.com) · source at
|
|
96
|
+
[github.com/profullstack/hqtui](https://github.com/profullstack/hqtui) · MIT.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@profullstack/hqtui-demo",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "The HQTUI reference dashboard: a btop-grade terminal system monitor. Runs on real system metrics or a deterministic simulation.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"dist",
|
|
13
13
|
"bin",
|
|
14
14
|
"src",
|
|
15
|
+
"README.md",
|
|
15
16
|
"LICENSE"
|
|
16
17
|
],
|
|
17
18
|
"engines": {
|
|
@@ -24,7 +25,7 @@
|
|
|
24
25
|
"prepublishOnly": "bun x tsc -p tsconfig.json"
|
|
25
26
|
},
|
|
26
27
|
"dependencies": {
|
|
27
|
-
"@profullstack/hqtui": "^0.1.
|
|
28
|
+
"@profullstack/hqtui": "^0.1.1"
|
|
28
29
|
},
|
|
29
30
|
"publishConfig": {
|
|
30
31
|
"access": "public"
|
|
@@ -35,5 +36,10 @@
|
|
|
35
36
|
"btop",
|
|
36
37
|
"dashboard",
|
|
37
38
|
"hqtui"
|
|
38
|
-
]
|
|
39
|
+
],
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "git+https://github.com/profullstack/hqtui.git",
|
|
43
|
+
"directory": "apps/demo"
|
|
44
|
+
}
|
|
39
45
|
}
|