Terminal Screen

Interactive web terminal with Classic single-pane and PRO multi-tab modes.


Layout

+------------------------------------------------------------------+
|  Terminal   [Classic] [PRO]   [ Presets ▼ ]   [ + New Pane ]     |
+------------------------------------------------------------------+
|  ┌──────────────────────────────────────────────────────────────┐|
|  │ root@server01:~# ls -la                                      │|
|  │ total 48                                                     │|
|  │ drwxr-x---  5 root root  4096 Jul 28 12:00 .                │|
|  │ -rw-r--r--  1 root root   220 Jul 15 04:54 .bashrc          │|
|  │                                                              │|
|  │ root@server01:~# _                                          │|
|  └──────────────────────────────────────────────────────────────┘|
+------------------------------------------------------------------+

Modes

ModeDescription
ClassicSingle terminal pane, full width
PROMultiple terminal panes in tabs

Terminal Features

FeatureDescription
ANSI ColorsFull color support via xterm.js
Tab CompletionShell tab completion
ResizeAuto-resize to fit container
Copy/PasteBrowser-native copy/paste
SearchSearch terminal output
Clickable URLsLinks are clickable (web-links addon)
UnicodeFull Unicode support (unicode11 addon)
WebGLGPU-accelerated rendering

Command Presets

Quick-access dropdown with saved commands:

CategoryExample
Systemhtop, df -h, free -m
Dockerdocker ps, docker images
Filesls -la, find . -name "*.log"
Networkss -tlnp, curl ifconfig.me
Databasepsql -U postgres
CustomUser-defined commands

Preset Management

ActionDescription
AddCreate new preset (label, command, category)
EditModify existing preset
DeleteRemove preset

WebSocket Protocol

Terminal communicates via WebSocket at /ws/terminal. See WebSocket Terminal Protocol for full message format.


Event Delegation

All buttons use data-terminal-action attributes.


CSS Classes

ClassPurpose
.terminal-containerxterm.js container
.terminal-toolbarTop action bar
.terminal-paneIndividual terminal pane
.terminal-preset-dropdownPreset command dropdown
.terminal-tab-barPRO mode tab bar

Keyboard Shortcuts

ShortcutAction
Ctrl+Shift+CCopy selection
Ctrl+Shift+VPaste
Ctrl+Shift+FSearch in terminal
Ctrl+Shift+TNew pane (PRO mode)
Ctrl+Shift+WClose pane (PRO mode)

API Calls

MethodEndpointPurpose
GET/api/terminal/presetsList presets
POST/api/terminal/presetsCreate preset
PUT/api/terminal/presets/:idUpdate preset
DELETE/api/terminal/presets/:idDelete preset

WebSocket: /ws/terminal (for actual terminal I/O)


Part of NexusPanel Documentation

← Back to Documentation