CLI tool
alacritty/alacritty avatar
alacritty/alacritty

Alacritty: A GPU-Accelerated Terminal That Leaves Tabs to Others

A cross-platform, OpenGL terminal emulator. Alacritty - A fast, cross-platform, OpenGL terminal emulator About Alacritty is a modern terminal emulator that comes with sensible defaults, but allows for extensive configuration.

65,724 stars3,611 forksRustApache-2.0

At a glance

What is it?
Alacritty is a cross-platform, OpenGL-based terminal emulator written in Rust. It prioritizes speed and simplicity, deliberately omitting tabs and splits in favor of external multiplexers and window managers.
Who is it for?
Adopt Alacritty if you want a fast, minimal terminal and are comfortable managing tabs via tmux or a window manager. Avoid it if you need built-in tabs, splits, or a GUI config editor.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 15 days ago.
What is it written in?
Mainly Rust, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What Alacritty Solves and Who It Is For

Alacritty targets users who want a terminal that renders quickly and consistently, without the bloat of integrated features like tabs or splits. The project's core premise, stated in the README, is to integrate with other applications rather than reimplement their functionality. That means it offloads multiplexing to tools like tmux and window management to the OS. The intended audience is developers and system administrators who spend hours in a terminal and value low latency and high throughput. It is not for users who expect an all-in-one terminal with a settings GUI. The README explicitly lists tabs, splits, and a GUI config editor as things you won't find. This is a deliberate trade-off, and it shapes every aspect of the project.

The OpenGL Rendering Mechanism

Alacritty uses OpenGL for rendering, which is the key to its performance claims. The README notes that it requires at least OpenGL ES 2.0, so it can run on a wide range of hardware, including older GPUs. The rendering pipeline is GPU-accelerated, meaning the terminal's frame buffer is drawn by the graphics card rather than the CPU. This approach reduces the load on the main processor and can produce more consistent frame rates, especially when scrolling large outputs. The README does not detail the exact shaders or buffer management, but the architecture is clear from the OpenGL requirement. The project also uses vtebench, a benchmark tool from the same repository, to measure terminal emulator throughput. This tool is part of the project, so the benchmarks are self-referential, but the README invites users to report cases where Alacritty does not perform better.

Configuration Without a Config File Generator

Alacritty does not create a configuration file for you. You must create it manually. The README lists the search order on Unix-like systems: $XDG_CONFIG_HOME/alacritty/alacritty.toml, then $XDG_CONFIG_HOME/alacritty.toml, then $HOME/.config/alacritty/alacritty.toml, then $HOME/.alacritty.toml, and finally /etc/alacritty/alacritty.toml. On Windows, it looks in %APPDATA%\alacritty\alacritty.toml. The format is TOML, which is a departure from older versions that used YAML. This change means existing users must migrate their config syntax. The README points to man 5 alacritty or the website for full documentation. There is no GUI editor, so all configuration is done by editing text files. This fits the project's philosophy of staying minimal, but it raises the barrier for newcomers who expect a first-run wizard.

Installation and Platform Support

Alacritty supports BSD, Linux, macOS, and Windows. Precompiled binaries are available from the GitHub releases page for macOS and Windows. For Linux and BSD, the README points to INSTALL.md for detailed instructions, which likely include package managers or building from source. The Windows version requires ConPTY support, which means Windows 10 version 1809 or higher. This is a hard requirement, not a recommendation. If you are on an older Windows version, Alacritty will not run. The README does not mention any other platform-specific dependencies, but the OpenGL ES 2.0 requirement applies everywhere. The project is at a beta level of readiness, according to the README, with some missing features and bugs. This is an honest admission, but it also means you should expect occasional issues.

Performance Claims and the Benchmark Caveat

The README addresses the question 'Is it really the fastest terminal emulator?' with a nuanced answer. It says benchmarking terminal emulators is complicated. Alacritty uses vtebench to measure throughput and consistently scores better than the competition in that specific benchmark. However, the README acknowledges that latency, framerate, and frame consistency are harder to quantify. Some terminals intentionally slow down to save resources, which might be preferred by some users. This is a critical caveat: raw throughput is not the only metric. The README advises users to test with their own specific use cases. This is honest but also a warning. If you rely on a terminal for interactive work like vim or ssh, a benchmark that measures bulk output may not reflect your experience. The project's own documentation stops short of claiming universal superiority.

The Missing Features: Tabs, Splits, and GUI Config

Alacritty deliberately omits tabs, splits, and a GUI config editor. The README says these are 'best left to a window manager or terminal multiplexer' like tmux. This is a design choice that has both benefits and costs. The benefit is a simpler codebase and a focus on rendering performance. The cost is that users must set up external tools to get the same functionality. For example, to have multiple terminals in one window, you need tmux or a tiling window manager. This adds complexity to your environment that is not present in terminals like Konsole or iTerm2. The README does not provide any built-in workaround. If you are a user who relies on tabs for organizing sessions, Alacritty will feel limiting. The project's stance is firm: it will not add these features. This is a clear boundary, and you should respect it before adopting the terminal.

Alternatives and Their Different Approaches

The README mentions tmux as a companion, not an alternative, but it also implies that other terminals exist. A direct alternative is a terminal like Kitty, which also uses GPU rendering but includes tabs and splits. Kitty takes a different approach: it builds more features into the terminal itself, rather than delegating to external tools. Another alternative is the traditional terminal emulator like GNOME Terminal, which uses VTE and is CPU-rendered. That approach prioritizes compatibility and features over raw speed. The key difference is architectural: Alacritty offloads rendering to the GPU and leaves multiplexing to external programs, while Kitty does both in one process. If you want a terminal with built-in tabs and splits, Alacritty is the wrong tool. The README's FAQ makes this explicit, so there is no ambiguity.

Maintenance and Upgrade Considerations

Alacritty is released under Apache-2.0, which is a permissive license. You can use, modify, and distribute it, with attribution. The project has a default branch of master and recent releases up to v0.17.0, with release candidates leading up to it. The version number 0.17.0 indicates that the project is still pre-1.0, and the README confirms beta status. This means APIs and configuration formats can change between versions. The switch from YAML to TOML is an example of a breaking change that users had to handle. Upgrading Alacritty may require updating your config file. The README does not provide a migration guide, but the man page and website likely do. The project is actively maintained, with a release candidate cycle, which suggests regular updates. However, you should budget time for config maintenance when upgrading.

Editorial conclusion

Adopt Alacritty if you want a fast, minimal terminal and are comfortable managing tabs via tmux or a window manager. Avoid it if you need built-in tabs, splits, or a GUI config editor. Before switching, verify that your GPU supports OpenGL ES 2.0 and that your workflow tolerates the absence of features like tabs. Test with your own workloads, as the README advises, because benchmark results may not reflect your use case.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community notes

Community notes