← All reportsPublic report

alacritty/alacritty

A cross-platform, OpenGL terminal emulator.

66k stars Rust View on GitHubprofiled 14d ago
Try GitZoid
2PRs this week
2Contributors
0Deps scanned
0Issues found
01 · Repo overview

How alacritty is put together

Alacritty is a GPU-accelerated, cross-platform (Linux/BSD/macOS/Windows) terminal emulator written in Rust, organized as a Cargo workspace of four crates: the main `alacritty` binary (windowing, rendering, input, config), `alacritty_terminal` (PTY handling, grid/term state machine, VTE parsing), and two config-support crates (`alacritty_config`, `alacritty_config_derive`). Data flows from a PTY child process through an event loop into the terminal grid model, which is rendered via OpenGL shaders (GLSL ES 2.0/GLSL 3) using winit/glutin for windowing and crossfont for glyph rasterization. Configuration is TOML-based with live file watching (notify) and hot-reload via custom SerdeReplace deserialization; on Unix an IPC socket (`alacritty msg`) allows external processes to send commands to running instances.

Languages

RustGLSL

Frameworks

winitglutinOpenGL (ES 2.0 / GLSL)clapserde/toml

Infrastructure

Sourcehut CI builds (.builds/linux.yml, .builds/freebsd.yml)WiX Windows installer (alacritty/windows/wix/alacritty.wxs)macOS app bundle (extra/osx/Alacritty.app)Makefile build orchestration

Major components

alacritty_terminal

Core terminal emulation: PTY abstraction (unix openpty and Windows ConPTY), VTE escape-sequence parsing, grid/cell storage, search, selection, and vi-mode.

renderer

OpenGL rendering pipeline including glyph atlas/cache, rect rendering, shader management, and GLES2/GLSL3 backends.

display

Window management, damage tracking, color management, cursor rendering, hints, bell visuals, and frame presentation.

input

Keyboard and mouse event processing, binding resolution, and translation of user input into terminal actions or text.

config

TOML configuration loading, typed UI config structures (bell, bindings, colors, font, mouse, scrolling, terminal, window), and file-change monitoring for live reload.

event

Central event processor tying winit events, PTY I/O, IPC messages, scheduler timers, and config updates to terminal/display state.

polling/ipc

Unix-only background thread listening on signals and a local IPC socket that receives `alacritty msg` commands (e.g., create window) from other processes.

alacritty_config / alacritty_config_derive

Failure-tolerant config deserialization abstractions and proc-macro derives (ConfigDeserialize, SerdeReplace) enabling partial config patching.

02 · Weekly changes

A single small fix corrected an off-by-one error in the ParagraphUp keybinding.

2 weeksWeek of 2026-08-17

The last few weeks on the Alacritty repository were quiet, with just one small fix landing each week. Work focused on polishing documentation and correcting a keyboard binding edge case rather than shipping new features.

Week by week

2026-08-17A single small fix corrected an off-by-one error in the ParagraphUp keybinding.latest1 change

Fix

Fixed off-by-one in ParagraphUp binding

The keyboard shortcut for jumping up one paragraph now moves the cursor to the correct position instead of being off by one line.

2026-08-03The only change this week was a documentation correction.1 change

Docs

Fixed link to escape sequence documentation

A broken link pointing to the escape sequence documentation was repaired so readers can find the reference material.

03 · Security check

Dependencies and code review

0 dependencies scanned

Dependency advisories

Security Watch

No known advisories across 0 scanned dependencies.

No known advisories in the scanned dependencies.

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required