Fast, native, feature-rich terminal emulator with platform-native UIs and GPU rendering, plus a libghostty library for embedding terminals.
kovidgoyal/kitty
A fast, feature-rich, GPU-based terminal emulator that runs on Linux, macOS and other platforms.
- Stars
- 35,385
- Forks
- 1,568
- Open issues
- 11
- Last commit
- 9 hours ago
What is it?
kitty is a terminal emulator aimed at developers who spend most of their day in the command line. It uses GPU rendering through OpenGL to draw text and graphics, and it is designed to run on multiple platforms.
Beyond basic terminal emulation, kitty includes a scriptable remote control interface and a configurable keyboard and layout system. Its project is written mainly in Python with C and Go components, and it is distributed with a terminfo entry so that other programs can recognize its capabilities.
The project's homepage hosts documentation, a FAQ, and a community on GitHub Discussions and Reddit for usage questions.
Key features
- 01GPU-based rendering with OpenGL for text and graphics.
- 02Cross-platform support for desktop operating systems.
- 03Remote control interface that can be scripted from the command line.
- 04Configurable keyboard shortcuts and window layouts.
- 05Ships a terminfo entry so other programs can detect its capabilities.
Use cases
- Daily shell work and running development tools in a fast terminal.
- Automating terminal sessions and window management through remote control.
- Customizing a terminal workflow with keybindings and layouts.
Things to know
- Licensed under GPL-3.0, a copyleft license that requires derivative works to be distributed under the same terms.
Topics
FAQ
- What is kitty?
- A fast, feature-rich, GPU-based terminal emulator that runs on Linux, macOS and other platforms. kitty is a terminal emulator aimed at developers who spend most of their day in the command line. It uses GPU rendering through OpenGL to draw text and graphics, and it is designed to run on multiple platforms.
- Is kitty free to use? What license does it have?
- kitty is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is kitty still maintained?
- Actively maintained. The last commit to kitty was on Oct 21, 2026.
- What can I use kitty for?
- Daily shell work and running development tools in a fast terminal. Automating terminal sessions and window management through remote control. Customizing a terminal workflow with keybindings and layouts.
- Where can I get kitty?
- The source code and installation instructions are on GitHub: https://github.com/kovidgoyal/kitty
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A keyboard-driven terminal download manager in Go that splits files into parallel chunks and can download from multiple mirrors.
A terminal screensaver written in Go that starts when your shell is idle, showing animated scenes like constellations, rain, and particles.
A fast, extensible progress bar for Python loops, iterables, and command-line pipes.
A modern, easy-to-use terminal text editor that ships as a single static binary with no dependencies, positioned as a successor to nano.
A terminal JSON viewer and processor that lets you browse, fold and transform JSON interactively in the shell.