libghostty 1.0: Terminal Emulation Goes Stable

Original: Libghostty 1.0

Why This Matters

One library now underlies terminal emulation for tens of millions of developers daily.

Mitchell Hashimoto released libghostty-vt 1.0 on Nov 6, 2026 — a stable C library for terminal emulation extracted from Ghostty, now powering JetBrains IDEs (12.5M+ users), Neovim, KDE Konsole, and 100+ other projects.

libghostty-vt 1.0 marks the first stable release of the portable C library that powers terminal emulation inside Ghostty, the terminal app Hashimoto started building in 2022. The 1.0 designation means both the library and its C ABI are now locked under semantic versioning with strict compatibility guarantees — a signal aimed squarely at Linux distribution packagers and developers who dynamically link against it.

Adoption has already been substantial. JetBrains replaced JediTerm with libghostty across all its IDEs — IntelliJ, PyCharm, GoLand and the rest — reaching over 12.5 million active users. Neovim has an approved PR to swap out libvterm for libghostty-vt, which closes a decade-old issue around reflowing scrollback on resize; maintainers were waiting on this tagged release before merging. KDE is experimenting with a Konsole replacement built on it. Vercel's Turborepo, devenv, OrbStack, and a wave of agentic coding tools have also adopted it.

The ABI design is deliberate: all objects are opaque handles, values go through enum-keyed getters and setters to avoid symbol proliferation, and non-opaque structs carry their own size so fields can be safely appended later. CI enforces the ABI policy via libabigail on every change. Community bindings now exist for Rust, Go, JavaScript, Swift, Python, .NET, Elixir, Dart, and Java. The awesome-libghostty list tracks well over 100 downstream projects.

Source

mitchellh.com — Read original →