TermX is a modern SSH + SFTP workspace for developers and operators. It combines a native cross-platform desktop experience with a Docker-deployable Web mode, keeping terminal sessions, server files, command history, server status, and AI operation entry points in one focused interface.
Inspired by DBX. TermX pays respect to DBX's clean desktop interaction model and adapts that spirit to SSH, SFTP, and server operations.
- Native desktop first: Windows, macOS, and Linux desktop builds powered by Tauri 2.
- SSH terminal workspace: multi-tab terminal sessions, command history, right-click actions, keepalive, and optional directory following.
- SFTP file manager: remote directory browsing, upload/download progress, drag-and-drop upload, inline rename, preview, delete confirmation, and file metadata.
- Server status: CPU, memory, disk, uptime, and load information in the same connection tab.
- Docker Web mode: run TermX as a single-user Web service when desktop GUI is not the right deployment shape.
- Local-first storage: SQLite metadata plus encrypted secrets through the TermX Secret Vault.
TermX follows a DBX-like desktop layout:
- left connection tree and folders
- center SSH terminal workspace
- right server status and SFTP directory
- optional right dock for command library, history, and AI operations
Before changing the desktop UI, SSH/SFTP panels, settings, dialogs, menus, or packaging, read the project skill at .codex/skills/termx-ui/SKILL.md.
pnpm.cmd install
pnpm.cmd dev
pnpm.cmd tauri devpnpm.cmd build:desktop:windowsWindows artifacts are generated under:
target/release/TermX.exe
target/release/bundle/nsis/TermX_0.1.0_x64-setup.exe
target/release/bundle/msi/TermX_0.1.0_x64_en-US.msi
target/ can be several GB during Rust/Tauri development because it contains incremental compilation caches, debug objects, release objects, and bundle staging files. The final installer remains lightweight, and target/ is ignored by Git.
To reclaim local disk space:
cargo cleandocker compose -f deploy/docker-compose.yml up --buildOpen http://localhost:4225.
Docker/Web mode starts SSH and SFTP connections from the container network, so target servers must be reachable from inside the container.
TERMX_DATA_DIR: app data directory. Defaults to a platform data dir on desktop and/app/datain Docker.TERMX_STATIC_DIR: static assets directory fortermx-web.TERMX_WEB_PASSWORD: single-user password for Docker/Web mode.TERMX_SECRET_KEY: encryption key used for deterministic secret access in containers.TERMX_PUBLIC_BASE_PATH: optional reverse proxy subpath.
pnpm.cmd typecheck
pnpm.cmd test
pnpm.cmd build
cargo check -p termx
cargo test -p termx-core
cargo test -p termx-webTermX is inspired by DBX's elegant desktop product design and interaction density. DBX is a database workspace; TermX explores the same level of polish for SSH, SFTP, and server operations.
