Alacritty is a fast, cross-platform, GPU-accelerated terminal emulator written in Rust. It uses OpenGL/GLES for rendering, providing low-latency text display with support for modern terminal features like true color, ligatures, hyperlinks, and a vi-like cursor mode. The architecture is split into multiple crates: `alacritty` (binary with event loop, window management, and rendering), `alacritty_terminal` (reusable library for terminal emulation including grid, cell model, PTY abstraction, and escape sequence parsing), `alacritty_config` (configuration loading and merging), and `alacritty_config_derive` (proc-macro for failure-resistant config deserialization). The terminal core is decoupled from the GUI, making it embeddable in other projects. Configuration is TOML-based with support for imports, live reload, and CLI overrides. The project includes an IPC mechanism for runtime window creation and config updates, and a comprehensive regression test suite using recorded terminal sessions and serialized grid snapshots.
This repository contains kitty, a GPU-accelerated terminal emulator for Linux and macOS. It features a highly optimized C core for rendering, font shaping, and terminal emulation, with a Python configuration layer and a plugin system ("kittens") for features like file transfer, SSH integration, diff viewing, and hints. The codebase also includes a set of well-crafted Go libraries for CLI framework building, TUI event loops, fuzzy matching (Smith-Waterman variant), rsync delta patching, streaming base64, and color space conversions. These libraries are structurally independent and could be extracted into separate projects. The architecture is a monolith at the C/Python level with loosely coupled Go-based kittens that communicate via IPC. Build and packaging are handled by a custom system (bypy) and standard Python setup. The project is actively maintained with extensive CI, automated testing, and a responsive issue tracker.
Termux is an Android terminal emulator and Linux environment app that provides a full command-line experience on Android devices. It combines a VT100/xterm-compatible terminal emulator (written in Java with JNI for PTY creation) with a bootstrap Linux environment containing common command-line tools (bash, ssh, compilers, etc.). The architecture is modular: a core terminal-emulator library handles escape sequences, Unicode, sixel graphics, and session management; a terminal-view module provides the Android View widget for rendering; a termux-shared library contains reusable utilities for file I/O, IPC, preferences, error handling, and shell execution; and the app module ties everything together with activities, services, and a plugin ecosystem (API, Float, Tasker, Widget, etc.). Key entry points include TermuxActivity (main UI), TermuxService (foreground service managing sessions), RunCommandService (plugin command execution), and TermuxInstaller (bootstrap setup). External dependencies include Android SDK (target 28, compile 36), Gradle, NDK for native code, and libraries like Apache Commons IO, Guava, and Markwon for markdown rendering.