Ghostty 1.0

Project scope & goals

  • New GPU-accelerated terminal emulator for macOS and Linux, written in Zig, aiming for:
    • “Platform‑native” UI (AppKit/SwiftUI on macOS, GTK4/Adwaita on Linux).
    • High performance (rendering, input latency, large scrollback handling).
    • Sensible defaults with minimal required configuration.
  • Source was private during a long beta to keep focus/polish; 1.0 is MIT-licensed and fully open.

Performance & UX

  • Many users report it feels noticeably snappier than iTerm2, Alacritty, GNOME Terminal, etc., especially:
    • Resizing, scrolling, and editing in Vim/Neovim/tmux.
    • Handling huge outputs (hundreds of thousands of lines) without lag.
  • Others see little or no benefit over existing fast terminals, or even worse performance on some setups (e.g., older GTK, certain Linux desktops, GPU/GL issues).
  • Some complain of higher CPU usage or input lag compared to lightweight terminals like xfce4-terminal or xterm.

Native UI & platforms

  • macOS users like native tabs/splits, system keybindings, Quick Look, “Quick Terminal” (quake-style dropdown), secure input, and window state restore.
  • On Linux, “native” via GTK4 is contentious:
    • Works well for users on GNOME-like environments.
    • KDE/Xfce users report clashing CSD/headerbar aesthetics and need config tweaks (gtk-titlebar = false, etc.).
  • No Windows build yet; some run it via WSLg. “Cross-platform” marketing is criticized for omitting Windows.

Config, features & missing pieces

  • Configuration is plain text key–value files; praised by some, others expect a GUI settings panel.
  • Community tools exist (web config generator). A GUI for settings is planned.
  • Features highlighted:
    • Native tabs and splits, quake-style terminal (macOS only), ligatures, Kitty graphics protocol, Kitty keyboard protocol, custom shaders, minimum-contrast settings, selection color control.
  • Notable gaps or limitations:
    • No built-in scrollback search yet (planned).
    • Quick Terminal lacks tabs and is macOS-only.
    • No bitmap font support by design; TTF “bitmap-like” workarounds are mixed in quality.
    • Some shell-integration behaviors (cursor blinking, prompt jumping) are opinionated and not yet fully configurable.

Compatibility & reliability

  • Some terminfo issues (e.g., SSH/tmux, FreeBSD, certain TUIs like lazydocker, goaccess) require TERM overrides or remote terminfo installation.
  • OpenGL 3.3 / GLES requirements break on some Linux GPUs/drivers; a few users hit crashes or warnings.
  • Others report months of stable daily use and praise the bug triage and community responsiveness.

Ecosystem & comparisons

  • Often compared to Kitty, WezTerm, Alacritty, Foot, iTerm2, Warp:
    • Seen as combining iTerm2-like mac “feel” with Alacritty/WezTerm-like speed, but fewer features than iTerm2 and less extensibility than WezTerm’s Lua config.
    • Appreciated for being fully open source with no telemetry, accounts, or AI features, unlike some commercial terminals.
  • Some question why another terminal is needed; the recurring answer is different tradeoffs: native UI, performance focus, and a particular design philosophy.