Ghostty 1.0

A new open-source terminal emulator, Ghostty 1.0, is drawing strong interest for combining GPU-accelerated performance with platform‑native UIs on macOS and Linux, written in Zig and released under the MIT license. Users highlight its low input latency, native tabs/splits, “quake mode” on macOS, Kitty protocol support and careful engineering, while comparing it against established tools like iTerm2, WezTerm, Alacritty and Kitty. At the same time, early adopters note trade‑offs such as no Windows build yet, reliance on GTK4 on Linux, missing conveniences like scrollback search and a GUI settings panel, and occasional integration quirks with tmux, terminfo and certain TUIs.

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.