Documentation
Installation
Prerequisites
- macOS or Linux
- Node.js 24+ (for development)
- npm 10+ (for development)
Download Pre-built Binaries
The easiest way to get started is to download the latest release from GitHub Releases.
Available for:
- macOS (Apple Silicon)
- macOS (Intel)
- Linux (AppImage)
Build from Source
If you prefer to build from source:
# Clone the repository
git clone https://github.com/markwylde/termide.git
cd termide
# Install dependencies
npm ci
# Start development mode
npm run dev
# Build for production
npm run build Getting Started
Opening Terminal Sessions
- Launch Termide
- Click the + button or press
Cmd+N(macOS) /Ctrl+N(Linux) to open a new terminal - Start typing commands in your native shell
Splitting Terminals
- Right-click on any tab to split it horizontally or vertically
- Drag the divider to resize panels
- Each panel runs an independent shell session
Managing Tabs
- Rename: Double-click a tab name or right-click → Rename
- Change Color: Right-click → Set Color
- Add Emoji: Right-click → Set Emoji
- Reorder: Drag and drop tabs to reorder them
- Pop Out: Drag a tab outside the window to create a new window
Features
Dockable Layout
Termide uses dockview to provide a flexible, dockable tabbed interface. Split your workspace any way you want:
- Horizontal splits
- Vertical splits
- Tab groups
- Floating windows
Native Shell Sessions
Powered by node-pty, Termide provides real native shell sessions that support:
- Full ANSI color support
- Complex terminal applications (vim, tmux, htop, etc.)
- Proper signal handling
- Native shell features (command history, tab completion, etc.)
Modern Terminal Experience
Built with xterm.js for a feature-rich terminal:
- Unicode support
- WebGL rendering
- Customizable themes
- Link detection
- Mouse support
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Cmd/Ctrl + N | New terminal |
Cmd/Ctrl + W | Close current terminal |
Cmd/Ctrl + Shift + T | Reopen closed terminal |
Cmd/Ctrl + [1-9] | Switch to tab [1-9] |
Cmd/Ctrl + Shift + [ | Previous tab |
Cmd/Ctrl + Shift + ] | Next tab |
Cmd/Ctrl + + | Zoom in |
Cmd/Ctrl + - | Zoom out |
Cmd/Ctrl + 0 | Reset zoom |
Configuration
Termide stores configuration in the following locations:
- macOS:
~/Library/Application Support/Termide/ - Linux:
~/.config/Termide/
Settings File
Create a config.json file in the configuration directory:
{
"theme": "dark",
"fontSize": 14,
"fontFamily": "JetBrains Mono",
"shell": "/bin/zsh",
"cursorStyle": "block",
"scrollback": 10000
} Development
Project Structure
├── electron/ # Electron main and preload processes
├── src/ # React renderer application
├── public/ # Static assets
└── docs/ # Documentation site Development Scripts
# Start development server
npm run dev
# Run linter
npm run lint
# Run smoke tests
npm run smoke
# Build application
npm run build
# Build for specific platform
npm run build:mac
npm run build:linux Tech Stack
- Electron: Desktop app framework
- React: UI library
- Vite: Build tool
- TypeScript: Type safety
- xterm.js: Terminal emulator
- node-pty: Pseudo-terminal bindings
- dockview: Dockable layout system