https://github.com/valen-h/admin-panel-ii
A process admin panel with support for WebDAV and CLI commands (& websockets etc...)
https://github.com/valen-h/admin-panel-ii
admin commands panel socket-io syscall typescript vale-server-ii webdav ws
Last synced: 6 months ago
JSON representation
A process admin panel with support for WebDAV and CLI commands (& websockets etc...)
- Host: GitHub
- URL: https://github.com/valen-h/admin-panel-ii
- Owner: Valen-H
- License: mit
- Created: 2019-05-11T16:58:04.000Z (over 6 years ago)
- Default Branch: staging
- Last Pushed: 2019-11-17T17:32:25.000Z (almost 6 years ago)
- Last Synced: 2025-03-23T11:33:12.547Z (7 months ago)
- Topics: admin, commands, panel, socket-io, syscall, typescript, vale-server-ii, webdav, ws
- Language: JavaScript
- Size: 1.05 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# admin-panel-ii
A management panel for Node processes. :zap:
***
## TODO
* [x] Add proccess memory stats (client + back)
* [x] CLI CMD
* [ ] WebDAV CMD [halfway]
* [x] WS CMD
## Commands
* [x] `kill[ interval\ [exitCode\]]`
* [x] `exit` - Closes CLI.
* [x] `clear` - Clears console.
* [x] `sock event message` - Sends message to sockets.
* [x] `help[ command]` - Receive help for a command.
* [x] `catch` - Catch unknown command errors.
* [x] `eval` - Evaluate a JS snippet.
* [x] `syscall code` - *new*, perform a system call.
> Type `.h` in CLI for more (accurate) details.
## Usage
```js
const Panel = require("adm-panel2");Panel.setup().then(panel => {
panel.toggleStats(); //every 1s, take memory snap
panel.cli({ input: process.stdin, output: process.stdout }); //type '.' (default prefix) and hit 'tab' for completion.
panel.start().then(() => console.log("Started.")); //hosted by default on http://admin:adm@localhost:9999/panel
});
```
### Latest features
* Keeps logs history.
### External Dependencies
* chalk (optional)
* fs-extra
* socket.io
* *client-side*: Plotly.js
> Based on [`vale-server-ii`](https://github.com/Valen-H/Server-II)
### Modules that depend on `adm-panel2`
* [Vale3](#https://github.com/Valen-H/Vale3)
> A trick for process restarting:
> Add a `restarting` field in `scripts` of `package.json` with body of `"restarting": "node index.js || npm run restarting"`, this way you can have the system relaunch your task upon non-zero exit codes. Reload the process by having an `fs.Watcher` watch for file changes and emitting a `.kill 0 2` to the panel.