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:
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 visibilityCTRL + 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)