mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-29 14:45:24 +00:00
chore: rework plugin readmes, json changelogs and standalone repo setup
This commit is contained in:
1 parent
a8f383d2b3
commit
29a946d02e
500 files changed
+6729
-1250
No files matched your search
@@ -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
@@ -0,0 +1 @@
|
||||
custom: https://donate.termix.site/
|
||||
@@ -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)
|
||||
@@ -0,0 +1,9 @@
|
||||
node_modules
|
||||
dist
|
||||
coverage
|
||||
*.log
|
||||
.env
|
||||
*.tmxplug
|
||||
*.tmxplug.sig
|
||||
termix-plugin-signing.key
|
||||
.termix-tables-*
|
||||
@@ -0,0 +1 @@
|
||||
npx --no -- commitlint --edit "$1"
|
||||
@@ -0,0 +1 @@
|
||||
npx lint-staged
|
||||
@@ -0,0 +1,4 @@
|
||||
dist
|
||||
coverage
|
||||
node_modules
|
||||
package-lock.json
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"semi": true,
|
||||
"singleQuote": false,
|
||||
"tabWidth": 2,
|
||||
"trailingComma": "all",
|
||||
"printWidth": 80,
|
||||
"arrowParens": "always",
|
||||
"endOfLine": "lf"
|
||||
}
|
||||
@@ -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": "RDP, VNC and Telnet from any browser"
|
||||
},
|
||||
{
|
||||
"type": "added",
|
||||
"text": "Tabs and split screen like any other session"
|
||||
},
|
||||
{
|
||||
"type": "added",
|
||||
"text": "Clipboard sync and file transfer through RDP drives"
|
||||
},
|
||||
{
|
||||
"type": "added",
|
||||
"text": "Jump host support"
|
||||
},
|
||||
{
|
||||
"type": "added",
|
||||
"text": "Session sharing and recording"
|
||||
},
|
||||
{
|
||||
"type": "added",
|
||||
"text": "Open a host in the native Windows Remote Desktop client from the desktop app"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
# Changelog
|
||||
|
||||
## 1.0.0
|
||||
|
||||
First release, bundled with Termix 2.9.0.
|
||||
|
||||
Adds RDP, VNC and Telnet sessions in the browser through guacd. Supports clipboard, file transfer through RDP drive redirection, session recording and session sharing.
|
||||
@@ -0,0 +1,29 @@
|
||||
# Contributing to Remote Desktop
|
||||
|
||||
## 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
|
||||
|
||||
- **Enable Remote Desktop:** turn remote desktop on or off for everyone
|
||||
- **guacd URL:** where guacd runs, as `host:port`. Changes apply without a restart
|
||||
|
||||
### Host
|
||||
|
||||
- **RDP, VNC and Telnet:** turn each protocol on and set its port
|
||||
- **Display, audio, device and performance options:** values left alone follow the host defaults
|
||||
- **guacd settings:** use a different guacd for this host
|
||||
- **Remote desktop toolbar:** show the toolbar in the session
|
||||
|
||||
## Permissions
|
||||
|
||||
- `remote-desktop.sessions`: let session sharing and recording reach your remote desktop sessions. Admins and users have it by default.
|
||||
@@ -1,68 +1,53 @@
|
||||
# Remote Desktop
|
||||
<div align="center">
|
||||
|
||||
RDP, VNC and Telnet sessions in the browser, with clipboard, file transfer, recording and sharing.
|
||||
<img src="https://raw.githubusercontent.com/Termix-SSH/Termix/main/public/icon.svg" width="120" height="120" alt="Termix Logo" />
|
||||
|
||||
<h1>Remote Desktop</h1>
|
||||
|
||||
<p>RDP, VNC and Telnet in your browser</p>
|
||||
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
## Overview
|
||||
|
||||
Remote Desktop opens RDP, VNC and Telnet sessions in a tab, just like an SSH terminal.
|
||||
|
||||
<br />
|
||||
|
||||
## Features
|
||||
|
||||
- Connect to hosts over RDP, VNC or Telnet from any browser.
|
||||
- Clipboard sync and file transfer through RDP drive redirection.
|
||||
- Session recording and session sharing, when those plugins are on.
|
||||
- Jump host support.
|
||||
- Opens the Windows Remote Desktop client from the desktop app.
|
||||
- RDP, VNC and Telnet from any browser
|
||||
- Tabs and split screen like any other session
|
||||
- Clipboard sync and file transfer through RDP drives
|
||||
- Jump host support
|
||||
- Session sharing and recording
|
||||
- Open a host in the native Windows Remote Desktop client from the desktop app
|
||||
|
||||
## Setup
|
||||
|
||||
This plugin needs guacd, the Apache Guacamole proxy that speaks RDP, VNC and Telnet. The Docker compose file runs it as its own `guacamole/guacd` container. This plugin never starts guacd itself.
|
||||
|
||||
Set where guacd runs with the guacd URL admin setting. The `GUACD_URL`, or `GUACD_HOST` and `GUACD_PORT`, environment variables override that setting.
|
||||
|
||||
Other environment variables:
|
||||
|
||||
| Variable | What it sets |
|
||||
| ------------------------------ | --------------------------------------------------------------------------------- |
|
||||
| `GUACD_TUNNEL_HOST` | The name guacd uses to reach Termix for a jump host tunnel. Defaults to `termix`. |
|
||||
| `GUACD_RECORDING_PATH` | Where guacd writes recordings, as guacd sees it. |
|
||||
| `GUACD_RECORDING_BACKEND_PATH` | The same folder, as Termix sees it. |
|
||||
| `GUACD_DRIVE_PATH` | The root of each user's RDP drive folder on the guacd host. |
|
||||
| `GUACAMOLE_ENCRYPTION_KEY` | The connection token key. Made from `JWT_SECRET` when not set. |
|
||||
|
||||
## Settings
|
||||
|
||||
### Admin
|
||||
|
||||
- Enable Remote Desktop: turn remote desktop on or off.
|
||||
- guacd URL: where guacd runs, as `host:port`. Changes apply without a restart.
|
||||
|
||||
### User
|
||||
|
||||
- RDP defaults: color depth, resize method, wallpaper, font smoothing, audio, printing, drive redirection and clipboard. A host's own values win over these.
|
||||
|
||||
### Host
|
||||
|
||||
- RDP, VNC and Telnet: turn each protocol on and set its port.
|
||||
- RDP security mode and Ignore certificate errors.
|
||||
- guacd settings: every other guacd option.
|
||||
- Remote desktop toolbar: show the toolbar in the session.
|
||||
|
||||
## Permissions
|
||||
|
||||
- `remote-desktop.sessions`: Let session sharing and recording reach your remote desktop sessions. Admins and users have it by default.
|
||||
<br />
|
||||
|
||||
## Services
|
||||
|
||||
Provides to other plugins:
|
||||
|
||||
- `sessions.live` as `rdp`, `vnc` and `telnet`: find a live session so it can be shared.
|
||||
- `sessions.live` as `rdp`, `vnc` and `telnet`: find a live session so it can be shared
|
||||
|
||||
Uses from other plugins:
|
||||
|
||||
- `recordings.writer` to record sessions. Optional.
|
||||
- `tunnels.access` for single-hop jump host tunnels. Optional.
|
||||
- `recordings.writer` to record sessions. Optional
|
||||
- `tunnels.access` for jump host tunnels. Optional
|
||||
|
||||
## 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.
|
||||
@@ -2,16 +2,16 @@
|
||||
"id": "remote-desktop",
|
||||
"name": "Remote Desktop",
|
||||
"version": "1.0.0",
|
||||
"description": "RDP, VNC and Telnet sessions in the browser, with clipboard, file transfer, recording and sharing.",
|
||||
"description": "RDP, VNC and Telnet sessions in your browser, with clipboard, file transfer, sharing and recording.",
|
||||
"author": {
|
||||
"name": "Termix"
|
||||
},
|
||||
"license": "MIT",
|
||||
"license": "Apache-2.0",
|
||||
"repository": "https://github.com/Termix-SSH/Termix",
|
||||
"category": "Terminal",
|
||||
"icon": "Monitor",
|
||||
"engine": {
|
||||
"termix": ">=2.9.0",
|
||||
"termix": ">=26.10.0",
|
||||
"api": "1"
|
||||
},
|
||||
"capabilities": [
|
||||
|
||||
@@ -7,7 +7,10 @@
|
||||
"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": {
|
||||
"guacamole-common-js": "^1.5.0",
|
||||
@@ -15,13 +18,18 @@
|
||||
"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/react": "^16.3.3",
|
||||
"@types/node": "^26.2.0",
|
||||
"@types/react": "^19.2.18",
|
||||
"@types/react-dom": "^19.2.4",
|
||||
"husky": "^9.1.7",
|
||||
"jsdom": "^30.0.1",
|
||||
"lint-staged": "^17.2.0",
|
||||
"prettier": "3.9.9",
|
||||
"vitest": "^4.1.11"
|
||||
},
|
||||
"peerDependencies": {
|
||||
@@ -36,5 +44,10 @@
|
||||
"patches": [
|
||||
"guacamole-common-js-flush"
|
||||
]
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{ts,tsx,js,jsx,mjs,cjs,json,css,md}": [
|
||||
"prettier --write"
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user