CLI tool
alacritty/alacritty avatar
alacritty/alacritty

Alacritty: OpenGL Terminal Emulator Without Tabs or Built-in Splits

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,820 stars3,625 forksRustApache-2.0

At a glance

What is it?
Alacritty is a cross-platform terminal emulator written in Rust that uses OpenGL for rendering, deliberately omits tabs and splits, and delegates those functions to tmux or a window manager. It is considered beta-quality software and targets developers who want a fast, configurable terminal without a built-in multiplexer.
Who is it for?
Alacritty suits developers who already use tmux or a tiling window manager and want a terminal that renders quickly with minimal visual overhead. It is the wrong choice for users who expect tabs, splits, or a graphical settings interface built into the terminal itself.
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 29 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 25, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What Alacritty Is and What It Deliberately Leaves Out

Alacritty is a terminal emulator that uses the GPU for rendering through OpenGL. It runs on BSD, Linux, macOS, and Windows. The README describes it as a modern terminal that comes with sensible defaults but allows for extensive configuration.

The design philosophy is explicit about omissions. The README states that Alacritty does not implement tabs or splits, and that these features are best left to a window manager or terminal multiplexer like tmux. There is also no graphical config editor. If you want tabs in Alacritty, you add tmux and manage panes there. This is a deliberate boundary, not a missing feature.

The README classifies the software as beta level of readiness: there are a few missing features and bugs to be fixed, but it is already used by many as a daily driver. Teams running Alacritty in production workflows should track the CHANGELOG for breaking changes.

Hardware Requirements and Platform Support

Alacritty requires at least OpenGL ES 2.0. On Windows, it additionally requires ConPTY support, which is available in Windows 10 version 1809 and higher. On older Windows versions, Alacritty will not run.

The README lists BSD, Linux, macOS, and Windows as supported platforms. Prebuilt binaries for macOS and Windows are available from the GitHub releases page. For Linux and BSD, the README points to INSTALL.md for package manager instructions and build steps.

The Cargo.toml workspace file shows the minimum required Rust version is 1.85.0. Teams building from source need to ensure their Rust toolchain is at that version or newer. The workspace is organised into four crates: alacritty (the GUI binary), alacritty_terminal (terminal emulation logic), alacritty_config, and alacritty_config_derive.

Configuration: TOML Files and Lookup Order

Alacritty is configured through a TOML file. The README notes that Alacritty does not create the config file automatically; you create it yourself. It looks for the config in this order on Unix-like systems:

1. $XDG_CONFIG_HOME/alacritty/alacritty.toml 2. $XDG_CONFIG_HOME/alacritty.toml 3. $HOME/.config/alacritty/alacritty.toml 4. $HOME/.alacritty.toml 5. /etc/alacritty/alacritty.toml

On Windows it looks in %APPDATA%\alacritty\alacritty.toml. The full configuration reference is in the manpage man 5 alacritty, or at alacritty.org/config-alacritty.html if manpages are not installed.

Themes are not bundled. The related searches data shows that themes are a common search topic. Alacritty's approach is that color schemes are just TOML configuration values; the community maintains separate theme files that you can copy into your config or import.

Building from Source

The Makefile in the repository documents the build targets. To build a native release binary on macOS:

bash
MACOSX_DEPLOYMENT_TARGET="10.12" cargo build --release

For a universal binary on macOS covering both x86_64 and aarch64 architectures:

bash
MACOSX_DEPLOYMENT_TARGET="10.12" cargo build --release --target=x86_64-apple-darwin
MACOSX_DEPLOYMENT_TARGET="10.12" cargo build --release --target=aarch64-apple-darwin

The Makefile also defines targets for creating an Alacritty.app bundle and a DMG for macOS distribution, with the app bundle placed under target/release/osx/. Shell completions for bash, zsh, and fish are generated as part of the build and placed in extra/completions/. Manpages are generated from .scd source files in extra/man/.

On Linux and BSD, the README directs users to INSTALL.md, which documents package manager and source build steps per distribution. The release binary and the INSTALL.md guide are the two official installation paths documented in the repository.

Alacritty vs kitty and WezTerm: Where the Differences Are

kitty and WezTerm are the most-compared alternatives, based on the related searches data. All three are GPU-accelerated terminals written in compiled languages.

kitty is written in C and Python. It includes a built-in tab and window management system, along with a framework for writing terminal programs (kitty remote control). That feature depth comes at the cost of a more complex configuration model.

WezTerm is written in Rust and includes tabs, splits, and a Lua-based configuration scripting system. It supports SSH multiplexing natively.

Alacritty's position is the narrowest of the three: it renders fast, supports extensive color and font configuration, and delegates everything else. Teams that want to use tmux and prefer that their terminal not duplicate multiplexer functionality will find Alacritty's approach cleaner. Teams that want everything in one binary will find kitty or WezTerm more practical.

For users on Windows, the comparison is often with Windows Terminal, which is a Microsoft-developed terminal with tabs, panes, and a graphical settings UI. Alacritty supports Windows but does not match Windows Terminal's integration with the Windows shell ecosystem. The README notes that Windows support requires Cygwin for some paths, and the ConPTY requirement limits the minimum Windows version.

Performance Claims and What the FAQ Says About Benchmarks

The README FAQ addresses the fastest terminal question directly. Alacritty uses vtebench to quantify terminal emulator throughput and states it consistently scores better than the competition using that tool. But the FAQ also notes that benchmarking terminal emulators is complicated and that other aspects like latency, framerate, and frame consistency are harder to quantify.

The FAQ adds that some terminal emulators intentionally slow down to save resources, which some users prefer. The README's recommendation is to test with your specific use cases rather than relying on published benchmark results.

This is an honest framing. Alacritty's throughput numbers, measured by vtebench, reflect the project's own benchmark tool. Independent comparisons can show different results depending on what is measured.

Maintenance State and Licence

The last push to the repository was on 2026-08-31. The most recent release was v0.17.0 on 2026-04-06. The repository is not archived.

Alacritty is published under the Apache-2.0 licence. The Cargo.toml also references a LICENSE-MIT file, meaning some components may be dual-licensed. Apache-2.0 is permissive and includes a patent grant, which is relevant for organisations with patent portfolio concerns.

The Cargo.toml workspace uses edition 2024, the Rust 2024 edition, and pins the minimum Rust version at 1.85.0. Anyone building from source or depending on the library crates should note this requirement. The Cargo.lock file is committed to the repository, which means dependency versions are pinned for reproducible builds.

Editorial conclusion

Alacritty suits developers who already use tmux or a tiling window manager and want a terminal that renders quickly with minimal visual overhead. It is the wrong choice for users who expect tabs, splits, or a graphical settings interface built into the terminal itself. Before installing, confirm that your GPU supports at least OpenGL ES 2.0 and, on Windows, that you are running Windows 10 version 1809 or higher. The last release was v0.17.0 on 2026-04-06.

Frequently asked questions

What is Alacritty used for?

Alacritty is a terminal emulator used as a daily driver on BSD, Linux, macOS, and Windows. It renders using OpenGL for throughput and is typically combined with tmux for tab and split management, since Alacritty deliberately does not include those features.

Is Alacritty deprecated?

Alacritty is not deprecated. The repository is not archived and the last push was on 2026-08-31. The README classifies it as beta-quality software, meaning there are still missing features and bugs, but the project continues to receive updates.

How do I use Alacritty themes?

Alacritty does not bundle themes. Color schemes are defined as TOML values in the configuration file at ~/.config/alacritty/alacritty.toml. The community publishes theme files that you add to your config manually or import using Alacritty's import mechanism in the TOML config.

How do I install Alacritty on Ubuntu?

The README points to INSTALL.md for detailed package manager and build instructions for Linux distributions including Ubuntu. Prebuilt binaries are provided for macOS and Windows, but Linux users are directed to the INSTALL.md file in the repository.

Official sources

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

Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/alacritty-alacritty.svg)](https://hysenlabs.com/projects/alacritty-alacritty)
Community notes

Community notes