{
  "id": 18751755,
  "title": "Libghostty 1.0: What a Stable C ABI for Terminal Emulation Actually Promises",
  "url": "https://urgent.news/2026/11/07/libghostty-1-0-what-a-stable-c-abi-for-terminal-emulation-actually",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-07T17:09:04.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/chenyuan20509/libghostty-10-what-a-stable-c-abi-for-terminal-emulation-actually-promises-2a33"
  },
  "original_language": "en",
  "account": "The Libghostty 1.0 release promises a stable C Application Binary Interface (ABI) for terminal emulation, which will enable Linux distributions, IDE vendors, and commercial products to integrate it without reservations. This ABI stability was the primary motivation behind JetBrains' extraction of the terminal emulation library from the Ghostty project and its integration into IntelliJ, PyCharm, GoLand, and other IDEs.\n\nThe release was tagged 1.0 by Mitchell Hashimoto, who posted the announcement on Hacker News, where it gained significant attention. The stable ABI promise ensures that binaries already compiled with the library remain functional even when the shared library is upgraded, enabling it to serve as infrastructure rather than being vendored inside each consumer's repository.\n\nLibghostty follows semantic versioning and enforces strict ABI compatibility, primarily through the use of opaque handles and enum-keyed getters and setters. New values can be added to the library by extending enums rather than exporting new symbols, ensuring seamless upgrades without crashing or undefined behavior. The library's design promotes compatibility with various programming languages, including Rust, Go, JavaScript, Swift, Python, .NET, Elixir, Dart, and Java, with community bindings available for over a hundred projects.",
  "summary": "Twelve and a half million active users got a new terminal emulator this year, and most of them will never know. They did not download anything, and nobody asked them to switch. JetBrains moved the terminal inside IntelliJ, PyCharm, GoLand, and the rest of its IDEs onto libghostty-vt, the terminal emulation library extracted from the Ghostty project, and the usage count in JetBrains' own reporting…",
  "key_points": [
    "Libghostty 1.0 introduces stable C Application Binary Interface (ABI) for terminal emulation.",
    "JetBrains extracted terminal emulation library from Ghostty project for integration into IDEs.",
    "ABI stability ensures functional binaries during library upgrades, serving as infrastructure."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}