Skip to content

Terminal

Experience the power of a secure, web-based terminal that brings the convenience of cloud shells to your fingertips. Inspired by VS Code's terminal and similar to Google Cloud Shell and AWS Cloud Shell, our terminal ensures safe command execution while providing a seamless interface.

Architecture

We have built nixopus terminal using the following architecture:

nixopus-viewnixopus-apinixopus-realtimegoph sshXTerm.jsReact-DOMVPS Nixopus Terminal ArchitectureUser InputTerminal OutputWebSocketSSH ProtocolData StreamSecure Connectionnixopus-viewnixopus-apinixopus-realtimeRequestResponse

Let's break down how our terminal works. Think of it as a team of three main players working together: the frontend (nixopus-view), the backend (nixopus-api), and our real-time communication hub (nixopus-realtime). The frontend is what you see and interact with - it uses XTerm.js to create that familiar terminal look and feel, while React-DOM helps us build a smooth, responsive interface. When you type commands, they travel through our backend, which uses goph-ssh to securely connect to your VPS. The real-time server keeps everything in sync, making sure your commands and their responses flow smoothly back and forth. We've built this whole system with security in mind, so your data stays safe as it moves between these components.

Features

Key Bindings

  • CTRL + J: Toggle terminal visibility
  • CTRL + T: Switch terminal position (bottom/right)

Resize

Drag the terminal's top edge to resize, similar to VS Code's terminal behavior.

Themes and Fonts

The terminal inherits your application's theme and font settings. Customize them in Theme and Fonts.

Terminal Focus

When the terminal is focused, application shortcuts are disabled to prevent conflicts with terminal commands. For example, CTRL + C sends SIGINT instead of copying.

What's Coming Next

  • Command sanitization and System protection against harmful commands
  • Privacy safeguards and following best practices
  • Prompt customization
  • Multi-editor support
  • Command auto-completion
  • AI-powered command suggestions
  • Multi-shell support (bash/zsh/fish)

Released under the Fair-Code Sustainable Use License