MCPSERV.CLUB
Termix

Termix

Self-Hosted

Web‑based SSH terminal and server management platform

Active(100)
5.9kstars
0views
Updated 4 days ago
Termix screenshot

Overview

Discover what makes Termix powerful

Termix is a **self‑hosted, web‑based server management platform** that consolidates SSH terminal access, tunneling, and file operations into a single, responsive UI. Built with modern JavaScript tooling, it exposes a clean REST/GraphQL API and WebSocket endpoints that allow developers to embed its capabilities into custom dashboards or automate routine tasks. The core design goal is to keep the stack lightweight while still offering a feature‑rich experience comparable to commercial tools like Cockpit or Webmin, but with the flexibility of an open‑source codebase.

Frontend

Backend

Persistence

Containerization

Overview

Termix is a self‑hosted, web‑based server management platform that consolidates SSH terminal access, tunneling, and file operations into a single, responsive UI. Built with modern JavaScript tooling, it exposes a clean REST/GraphQL API and WebSocket endpoints that allow developers to embed its capabilities into custom dashboards or automate routine tasks. The core design goal is to keep the stack lightweight while still offering a feature‑rich experience comparable to commercial tools like Cockpit or Webmin, but with the flexibility of an open‑source codebase.

Technical Stack & Architecture

Termix is a full‑stack TypeScript application.

  • Frontend: React 18 with Vite, styled using Tailwind CSS and Radix UI primitives for accessible components. The UI leverages WebSocket connections to a Node.js backend, enabling real‑time terminal streams and live file‑system events.
  • Backend: Node.js (LTS) running an Express/Socket‑IO hybrid server. The service layer is written in TypeScript, exposing typed APIs for SSH session management, tunnel lifecycle, and file CRUD.
  • Persistence: A lightweight SQLite database stores user accounts, SSH host metadata, tunnel configurations, and audit logs. The schema is versioned via migration scripts bundled with the Docker image.
  • Containerization: A single multi‑stage Dockerfile builds both client and server, producing a minimal runtime image (~70 MB). This makes Termix trivial to deploy on Kubernetes, Docker‑Compose, or bare‑metal servers.

Core Capabilities & Developer APIs

  • SSH Sessions: Create terminal sessions via /api/ssh/session (POST) that return a WebSocket URL. The backend spawns an ssh process, pipes input/output, and handles reconnection logic automatically.
  • SSH Tunnels: Expose /api/tunnel endpoints to create, list, and delete tunnels. Internally Termix uses the ssh -L/-R flags combined with autossh‑like health checks.
  • File Manager: REST endpoints (/api/file/*) support upload, download, rename, delete, and move. The file editor is powered by Monaco Editor in the browser, with syntax highlighting for over 100 languages.
  • Event Hooks: Webhooks can be configured per user to notify external services on session start/stop, tunnel changes, or file modifications.
  • Authentication & RBAC: JWT‑based auth with role definitions (admin, user). The API includes middleware to enforce permissions on a per‑resource basis.

Deployment & Infrastructure

Termix is designed for horizontal scalability. Each instance can run behind a reverse proxy (NGINX, Traefik) with TLS termination. Because the state is kept in SQLite, multiple replicas can share a read‑only file system; however, for write consistency a single master instance is recommended. The Docker image supports --env overrides for database path, session timeout, and feature toggles. For high‑availability, Kubernetes deployments can use StatefulSets with persistent volumes and headless services for load balancing.

Integration & Extensibility

  • Plugin System: Developers can write Node.js modules that hook into the onSessionCreate or onTunnelCreate events, extending Termix with custom logic (e.g., auto‑deploying SSH keys, integrating with external inventory systems).
  • SDK: A lightweight TypeScript SDK (available on npm) wraps the REST/WebSocket APIs, simplifying client integration.
  • Custom UI: The front‑end is fully modular; developers can replace the React components with Vue or Svelte if desired, as long as they expose the same WebSocket protocol.
  • Webhooks & Callbacks: Out‑of‑the‑box support for GitHub Actions, Slack notifications, or custom HTTP endpoints ensures Termix can fit into CI/CD pipelines.

Developer Experience

The documentation is hosted on the official site and includes a live API reference generated from OpenAPI specs. A docs/ folder contains architecture diagrams, code samples, and migration guides. The community is active on Discord, with dedicated channels for feature requests and troubleshooting. Licensing under MIT guarantees that you can ship Termix in closed‑source products without any fees.

Use Cases

  • DevOps Tooling: Centralize SSH access for a fleet of servers, exposing terminal and file manager to developers without installing local clients.
  • Educational Platforms: Provide students with isolated terminal sessions in a browser‑based learning environment.
  • Remote Support: Allow support teams to access client servers through a secure web portal, reducing the need for VPNs.
  • CI/CD Environments: Trigger SSH tunnels from pipelines to expose test services, or use webhooks to spin up temporary instances.

Advantages Over Alternatives

  • Forever‑Free & Open Source: No subscription fees or feature locks.
  • Lightweight Deployment: Docker image < 100 MB, no heavy dependencies.
  • Modern Stack: TypeScript end‑to‑end, making it easy to understand and extend.
  • Built‑in Tunneling: Unlike pure terminal tools, Termix manages tunnels with health checks and auto‑reconnect.
  • Rich File Operations: Direct file editing in the browser eliminates the need for separate SFTP clients.

For developers seeking a fully self‑hosted, extensible server management platform that blends terminal, tunneling, and file editing into a single codebase,

Open SourceReady to get started?

Join the community and start self-hosting Termix today

Weekly Views

Loading...
Support Us

Featured Project

$30/month

Get maximum visibility with featured placement and special badges

Repository Health

Loading health data...

Information

Category
cloud-platforms
License
NOASSERTION
Stars
5.9k
Technical Specs
Pricing
Open Source
Database
SQLite
Docker
Official
Supported OS
LinuxDocker
Author
Termix-SSH
Termix-SSH
Last Updated
4 days ago