Skip to main content

GPU-accelerated terminal for developer workflows

Canopy ships a WebGL-powered terminal built on xterm.js. Hold Alt and drag a tab to split it horizontally or vertically, reorder tabs, or move them between groups.

Canopy terminal showing split panes with WebGL rendering

WebGL rendering with xterm.js

The terminal uses xterm.js with a WebGL renderer, so scrolling and output stay smooth even with large log streams. WebGL is attached only to the active tab and released when you switch away, freeing GPU memory.

  • WebGL canvas rendering for smooth output at high line counts
  • GPU resources released automatically on inactive tabs
  • 5000-line scroll-back buffer per session

split panes via Alt+drag

Hold Alt and drag a tab to the edge of a pane to split it horizontally or vertically. The split tree supports up to four nesting levels. Reorder tabs within a group or move them between groups.

  • Horizontal and vertical splits via Alt+drag
  • Up to four levels of nested splits
  • Tabs move between pane groups by dragging

shell config and themes

Canopy spawns your login shell (bash, zsh, fish, or whatever $SHELL points to) with your full profile loaded. Choose from 12 built-in color themes and configure font family, font size, and ligature rendering.

  • Login shell spawned with your profile (.bashrc, .zshrc, config.fish)
  • 12 themes: Dracula, Nord, Tokyo Night, Catppuccin Mocha, and more
  • Font family, size, and ligature settings

questions about the terminal

Which shells does the Canopy terminal support?
Bash, zsh, fish, and any shell that works with node-pty. Canopy uses the shell configured in your environment.
Does Canopy use tmux?
Canopy has optional tmux integration for session persistence. When enabled, terminal sessions survive app restarts. The feature is experimental and can be toggled in Settings.
Is the WebGL renderer faster than a regular terminal?
The WebGL renderer offloads glyph drawing to the GPU, which reduces CPU usage during fast output like build logs or large git diffs. Perceived speed depends on your hardware.