chore: rework plugin readmes, json changelogs and standalone repo setup

This commit is contained in:
LukeGus committed 2026-10-04 21:25:16 -05:00
1 parent a8f383d2b3
commit 29a946d02e
500 files changed
+6729 -1250

No files matched your search

+21
View File
@@ -0,0 +1,21 @@
{
"extends": ["@commitlint/config-conventional"],
"rules": {
"type-enum": [
2,
"always",
[
"feat",
"fix",
"docs",
"style",
"refactor",
"perf",
"test",
"chore",
"revert"
]
],
"subject-case": [0]
}
}
+1
View File
@@ -0,0 +1 @@
custom: https://donate.termix.site/
+34
View File
@@ -0,0 +1,34 @@
# Overview
_Short summary of what this PR does_
- [ ] Added: ...
- [ ] Updated: ...
- [ ] Removed: ...
- [ ] Fixed: ...
# Changes Made
_Detailed explanation of changes (if needed)_
- ...
# Related Issues
_Link any issues this PR addresses_
- Closes #ISSUE_NUMBER
- Related to #ISSUE_NUMBER
# Screenshots / Demos
_(Optional: add before/after screenshots, GIFs, or console output)_
# Checklist
- [ ] Code follows project style guidelines
- [ ] Supports mobile and desktop UI/app (if applicable)
- [ ] Added the change to `CHANGELOG.json`
- [ ] `npm run test`, `npm run typecheck` and `npm run validate` pass
- [ ] I have read `CONTRIBUTING.md`
- [ ] This is not a translation request. See [docs](https://docs.termix.site/translations)
+9
View File
@@ -0,0 +1,9 @@
node_modules
dist
coverage
*.log
.env
*.tmxplug
*.tmxplug.sig
termix-plugin-signing.key
.termix-tables-*
+1
View File
@@ -0,0 +1 @@
npx --no -- commitlint --edit "$1"
+1
View File
@@ -0,0 +1 @@
npx lint-staged
+4
View File
@@ -0,0 +1,4 @@
dist
coverage
node_modules
package-lock.json
+9
View File
@@ -0,0 +1,9 @@
{
"semi": true,
"singleQuote": false,
"tabWidth": 2,
"trailingComma": "all",
"printWidth": 80,
"arrowParens": "always",
"endOfLine": "lf"
}
+34
View File
@@ -0,0 +1,34 @@
{
"$schema": "https://raw.githubusercontent.com/Termix-SSH/Termix/main/packages/plugin-sdk/schema/changelog.schema.json",
"releases": [
{
"version": "1.0.0",
"changes": [
{
"type": "added",
"text": "CPU, memory, disk, network, temperature, NVIDIA GPU, processes, ports and logins"
},
{
"type": "added",
"text": "History charts for each host"
},
{
"type": "added",
"text": "Manage services, packages, cron jobs, firewall rules, users, SSL certificates, logs and WireGuard"
},
{
"type": "added",
"text": "Health checks for your hosts and services"
},
{
"type": "added",
"text": "A layout you can rearrange per host"
},
{
"type": "added",
"text": "Live stats in the terminal toolbar"
}
]
}
]
}
-7
View File
@@ -1,7 +0,0 @@
# Changelog
## 1.0.0
First release, bundled with Termix 2.9.0.
Shows live CPU, memory, disk, network and process stats for your hosts, with history charts. Also adds tools to manage services, packages, firewall rules, cron jobs, users, SSL certificates, logs and WireGuard.
+34
View File
@@ -0,0 +1,34 @@
# Contributing to Host Metrics
## Development
```bash
npm run build # build into dist/
npm run test # run this plugin's tests
npm run typecheck # type-check this plugin
npm run validate # check manifest.json
npm run format # format the code with Prettier
```
## Settings
### Admin
- **Metrics interval (seconds):** how often a host is checked while someone views it
- **History retention (days):** how long history is kept for the charts
- **Metrics on for new hosts:** whether new hosts start with metrics turned on
### User
- **Temperature unit:** Celsius or Fahrenheit
### Host
- **Collect metrics:** turn metrics on for this host
- **Metrics interval (seconds):** use a different interval for this host
- **Excluded mounts:** mount points or filesystem types to hide
- **Monitored paths:** extra paths to watch that are not separate mounts
## Permissions
- `host-metrics.use`: view metrics and use the manager cards. Admins and users have it by default.
+36 -40
View File
@@ -1,52 +1,48 @@
# Host Metrics
<div align="center">
Live CPU, memory, disk, network and process stats, plus tools to manage services, packages, firewall rules, cron jobs, users and more.
<img src="https://raw.githubusercontent.com/Termix-SSH/Termix/main/public/icon.svg" width="120" height="120" alt="Termix Logo" />
<h1>Host Metrics</h1>
<p>Live stats for your servers, plus tools to manage them</p>
</div>
<br />
## Overview
Host Metrics shows what is happening on your servers, live and over time, and lets you manage common things on them without opening a terminal. It works over SSH on most Linux servers with nothing to install.
<br />
## Features
- Live CPU, memory, disk, network, temperature and process stats.
- History charts for each host.
- Tools to manage services, packages, firewall rules, cron jobs, users, SSL certificates, logs and WireGuard.
- A drag and drop layout you can change per host.
- Other features can add their own tools. Tailscale does.
- CPU, memory, disk, network, temperature, NVIDIA GPU, processes, ports and logins
- History charts for each host
- Manage services, packages, cron jobs, firewall rules, users, SSL certificates, logs and WireGuard
- Health checks for your hosts and services
- A layout you can rearrange per host
- Live stats in the terminal toolbar
## Setup
The online dot in the host list comes from Termix itself, not this plugin. A working metrics login is what marks a reachable host as online.
## Settings
### Admin
- Metrics interval (seconds): how often a host is checked while someone views it.
- History retention (days): how long history is kept.
- Metrics on for new hosts: whether new hosts start with metrics turned on.
### User
- Temperature unit: Celsius or Fahrenheit.
### Host
- Collect metrics: turn metrics on for this host.
- Metrics interval (seconds): override the admin interval.
- Enabled widgets: which widgets to show.
- Excluded mounts and Monitored paths: which disks to hide or watch.
## Permissions
- `host-metrics.use`: View metrics and use the host tools. Admins and users have it by default.
<br />
## Services
Provides to other plugins:
- `host-metrics.viewers`: read a host's current metrics.
- `host-metrics.viewers`: read a host's current metrics
## Development
<br />
```bash
npm run build # build into dist/
npm run test # run this plugin's tests
npm run typecheck # type-check this plugin
```
## Support
To report a bug or request a feature, open a [support ticket](https://github.com/Termix-SSH/Support/issues/new/choose). You need to be logged in to GitHub. Please be as detailed as possible, preferably in English.
For discussions and questions, join the [Discord](https://discord.gg/jVQGdvHDrf) server.
<br />
## License
Distributed under the Apache License Version 2.0. See [LICENSE](https://github.com/Termix-SSH/Termix/blob/main/LICENSE) for more information.
+3 -3
View File
@@ -2,16 +2,16 @@
"id": "host-metrics",
"name": "Host Metrics",
"version": "1.0.0",
"description": "Live CPU, memory, disk, network and process stats, plus tools to manage services, packages, firewall rules, cron jobs, users and more.",
"description": "Live CPU, memory, disk, network and GPU stats, plus cards to manage services, packages, firewall rules and more.",
"author": {
"name": "Termix"
},
"license": "MIT",
"license": "Apache-2.0",
"repository": "https://github.com/Termix-SSH/Termix",
"category": "Monitoring",
"icon": "Activity",
"engine": {
"termix": ">=2.9.0",
"termix": ">=26.10.0",
"api": "1"
},
"capabilities": [
+14 -1
View File
@@ -7,12 +7,17 @@
"build": "termix-plugin build",
"test": "termix-plugin test",
"typecheck": "tsc -p .",
"validate": "termix-plugin validate"
"validate": "termix-plugin validate",
"format": "prettier --write .",
"format:check": "prettier --check .",
"prepare": "husky || true"
},
"dependencies": {
"lucide-react": "^1.33.0"
},
"devDependencies": {
"@commitlint/cli": "^21.2.2",
"@commitlint/config-conventional": "^21.2.0",
"@termix/plugin-sdk": "^1.0.0",
"@testing-library/dom": "^10.4.2",
"@testing-library/jest-dom": "^7.0.1",
@@ -21,7 +26,10 @@
"@types/react": "^19.2.18",
"@types/react-dom": "^19.2.4",
"better-sqlite3": "^13.0.3",
"husky": "^9.1.7",
"jsdom": "^30.0.1",
"lint-staged": "^17.2.0",
"prettier": "3.9.9",
"vitest": "^4.1.11"
},
"peerDependencies": {
@@ -31,5 +39,10 @@
"react": "^19.2.8",
"sonner": "^2.0.8",
"ssh2": "^1.17.0"
},
"lint-staged": {
"*.{ts,tsx,js,jsx,mjs,cjs,json,css,md}": [
"prettier --write"
]
}
}