Installation & Setup
Atlas Terminal is distributed as both an automated Windows installer and a standalone portable archive.
Method 1: Windows Installer (.exe)
The standard installer integrates Atlas into your Windows Start Menu, configures desktop shortcuts, registers the atlas CLI companion tool, and enables background auto-updates.
# Download the latest installer from GitHub Releases:
https://github.com/akrram0/atlas-terminal/releases/latest
Method 2: Portable Zero-Install Archive
Extract atlas-terminal-windows-x64.zip into any folder (e.g. C:\Tools\Atlas) and run atlas-terminal.exe directly. Your configuration is stored in ~/.config/atlas/settings.json (or right next to the executable if portable.txt is present).
Atlas Satellites: Subterminal Companion Tools
Atlas includes a built-in suite of zero-overhead developer companions executed directly via atlas <command>. These tools run synchronously in your console or powershell without launching the full GUI terminal:
| Command |
Description |
Example |
atlas port [number] |
Inspect active listening ports and kill blocking processes in 1-shot |
atlas port 3000 -k |
atlas jwt [token] |
Offline, privacy-safe JSON Web Token header/claims inspector |
atlas jwt eyJhbGci... |
atlas qr [text/url] |
Instant terminal QR code generator for URLs, auth tokens, and WiFi |
atlas qr https://atlas.sh |
atlas json, jq [key] |
Colorized JSON validator, syntax highlighter, and property selector |
cat data.json | atlas json user.name |
atlas diff [f1] [f2] |
Terminal diff viewer with syntax colors, line numbers, and inline changes |
atlas diff old.rs new.rs |
atlas img [file] |
Inline terminal image viewer (OSC 1337 GPU texture & 24-bit halfblocks) |
atlas img preview.png |
atlas pick |
Extract on-screen URLs, commit hashes, file paths, and IPs for quick piping |
atlas pick --url |
atlas hud [title] [msg] |
Dynamic Island status pulse & notification trigger |
atlas hud "Build" "Compiled in 0.8s" |
atlas -v, version |
Rich system, GPU, runtime, and shell specification card |
atlas -v |
Keyboard Shortcuts Reference
Every pane, tab, search action, and setting is reachable via home-row hotkeys:
| Shortcut |
Action |
Context |
| Ctrl + F |
Find in Terminal (floating search bar & match highlight) |
Global |
| Ctrl + Shift + P |
Open floating Command Palette |
Global |
| Ctrl + K |
Alternate Command Palette trigger |
Global |
| Alt + Enter |
Split active pane vertically (columns) |
Hyprland Tiling |
| Alt + D |
Split active pane horizontally (rows) |
Hyprland Tiling |
| Alt + Space |
Toggle split layout (columns ↔ rows) |
Hyprland Tiling |
| Alt + Arrows / H,J,K,L |
Spatial directional pane navigation |
Hyprland Tiling |
| Alt + Shift + Arrows |
Resize active pane (5% increments) |
Hyprland Tiling |
| Alt + Z |
Toggle pane zoom / maximize |
Hyprland Tiling |
| Alt + W / Ctrl + W |
Close active pane or tab |
Global |
| Ctrl + T |
Open new default shell tab |
Global |
| Ctrl + Shift + 1 … 5 |
Instant launch PowerShell / WSL / CMD / Git Bash / OpenCode |
Global |
| Alt + T |
Cycle theme preset with Dynamic Island toast |
Global |
| Ctrl + Shift + U |
Extract on-screen URLs into Command Palette |
Global |
| Ctrl + , |
Open Settings drawer |
Global |
| Ctrl + Click |
Click-to-Code File Jump / Open Web URL |
Terminal Pane |
Developer Superpowers
Atlas Terminal is built specifically for software engineers with integrated workflows that eliminate context switching:
1. Find in Terminal (Ctrl+F)
A floating, non-intrusive macOS-style search bar that hovers cleanly over the active pane. Features live buffer highlighting across both the active screen and scrollback history, instant match navigation (Enter / Shift+Enter), a real-time match counter badge (3 of 18), and kinetic auto-scrolling to matching lines.
2. Click-to-Code: Smart File Jumps (Ctrl+Click)
Hover any compiler error, panic stack trace, or source path (e.g. src/main.rs:42:15, server.ts:108) with Ctrl held to reveal an accent highlight. Clicking it automatically resolves relative paths against the active pane's working directory and launches your preferred editor directly at the exact line and column coordinates:
- Auto-Detect: Automatically probes for VS Code (
code --goto), Cursor, or Zed on your %PATH%.
- Configurable: Select your preferred editor (VS Code, Cursor, Zed, or System Default) in the Settings drawer under Developer & Editor.
3. Native Background Task Notifications
Never wait idly on a terminal prompt again. When a long-running build or command (such as cargo build, npm install, or docker build) finishes while Atlas Terminal is unfocused or minimized, Atlas sends a native Windows Action Center notification alert with the job duration.
The duration threshold can be configured to 5s, 10s, 30s, or 60s in Settings under Background Notifications.
Dynamic Island Topbar HUD
When running in borderless mode or executing background tasks, Atlas Terminal renders an organic Dynamic Island capsule at the top center of the screen.
The island animates with fluid spring physics to present:
- Theme Switching Feedback: Displays the active color preset when cycling with Alt+T.
- Update Available Pulses: Discreetly informs you when an in-place delta update is ready to install.
- Shell Script Triggers (OSC 1338): Any script, CI runner, or shell function can trigger the Dynamic Island with custom titles and messages:
# Trigger Dynamic Island notification from bash or powershell:
atlas hud notify "Build Success" "All 83 tests passed in 2.7s"
Tabs & Split Panes
Atlas supports nested horizontal and vertical split layouts. Each pane maintains its own independent PTY process, working directory, and mouse capture state.
When working in a split layout, press Alt+Z to temporarily maximize your active pane to fill the entire window without losing your multi-pane layout. Pressing it again restores your split geometry. Press Alt+Enter to split vertically, Alt+D to split horizontally, and Alt+Space to toggle orientation.
Fastfetch Inline Images Setup
Atlas Terminal features native support for the iTerm2 OSC 1337 image protocol without requiring Sixel or WebViews. Fastfetch can render your high-resolution distro or custom avatar graphic directly beside system specs.
Add this to your ~/.config/fastfetch/config.jsonc:
{
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
"logo": {
"type": "iterm",
"source": "/path/to/your/avatar.png",
"width": 18,
"height": 9,
"padding": {
"top": 1,
"left": 2,
"right": 3
}
},
"modules": [
"title",
"separator",
"os",
"host",
"kernel",
"uptime",
"terminal",
"display",
"cpu",
"gpu",
"memory"
]
}
Modern Mouse Reporting & Hyperlinks
Atlas Terminal features full SGR mouse tracking (?1000h / ?1006h) support. Interactive TUI applications such as Lazygit, OpenCode, Neovim, and Midnight Commander respond seamlessly to mouse clicks, dragging, and wheel scrolling.
- Selection Bypass: Hold Shift while dragging to bypass application mouse capture and select terminal text normally.
- Interactive Hyperlinks: Press Ctrl + Click on any highlighted URL to open it immediately in your default browser.
- Keyboard URL Picker: Press Ctrl + Shift + O to extract all visible URLs into the Command Palette and open them without touching the mouse.
WSL Linux Profiles & Terminal Forwarding
Atlas Terminal automatically inspects your Windows Subsystem for Linux installation and creates shell profiles for every registered distribution (Ubuntu, Debian, Arch, Fedora, openSUSE, Alpine).
Atlas automatically forwards TERM_PROGRAM=Atlas and TERM_PROGRAM_VERSION into WSL through WSLENV with /u flags, ensuring that Fastfetch and Linux shell prompts correctly recognize Atlas Terminal.
Themes, Presets & Extensible Custom Themes
Atlas Terminal features a curated set of eye-comfortable, aesthetic presets across both Dark and Light modes, paired with an extensible custom theme importing system.
Curated Preset Gallery
- Gruvbox: Retro groove warm earthy palette designed for extreme eye comfort (Gruvbox Dark & Gruvbox Light warm paper).
- Barbie: Vibrant synthwave cyber-pink on nocturnal amethyst velvet (Barbie Dark) & soft pastel dreamhouse blush paper with high-contrast berry ink (Barbie Light).
- Osaka Jade: Lush deep night jade cyberpunk with emerald, sage, and mint tranquility (Osaka Jade & Osaka Mint).
- Rosé Pine: All-natural pine warmth engineered for zero eye fatigue in daylight or night (Rosé Pine & Rosé Pine Dawn).
- Dracula: Legendary vampire dark palette with violet, pink, and cyan accents (Dracula & Dracula Light).
- Solarized: Ethan Schoonover's iconic color science (Solarized Dark & Solarized Light).
- Catppuccin: Soothing pastel tones with lavender and peach accents (Catppuccin Mocha & Catppuccin Latte).
- GitHub & macOS Cream: High-contrast developer and Apple paper aesthetics.
- Classic Black: Pure CRT xterm terminal black.
Extensible Custom Theme System
Users can install and load any custom terminal color scheme. Atlas Terminal automatically scans ~/.config/atlas/themes/*.json on startup and reload.
- Universal Compatibility: Directly imports native Atlas theme files AND standard Windows Terminal Color Schemes (e.g. from windowsterminalthemes.dev).
- CLI Theme Commands:
atlas theme list — View all built-in and installed custom themes with RGB color swatches.
atlas theme set <name|id> — Instantly apply a theme preset.
atlas theme install <path|url> — Install a theme file or download directly from a URL into your themes folder.
atlas theme export <name> [file.json] — Export any theme to a JSON file.
atlas theme dir — Open the custom themes directory in Windows File Explorer.
- Settings GUI Integration: Open Settings (Ctrl + ,) → Appearance → click Open Themes Folder to drag and drop custom
.json themes.
Built-in Benchmark (Zero External Scripts)
Run atlas bench inside Atlas Terminal to run live system diagnostics:
- Live Memory Footprint: Queries active Win32 Working Set RAM in real-time (~25 MB idle vs ~89 MB Windows Terminal).
- PTY Stream Throughput: In-memory ANSI escape stream processing speed (850+ MB/s).
- Hardware Composition Latency: Real DirectX / Direct3D swapchain frame render cadence (<1 ms).
- Protocol Verification: Live matrix for Kitty Graphics Protocol, iTerm2 inline images, SGR 24-bit Truecolor, OSC 8 hyperlinks, and Dynamic Island HUD.
DirectX GPUI Rendering Engine
Atlas Terminal is built in Rust using Zed's GPUI framework. Unlike legacy Win32 consoles or Electron wrappers, Atlas treats the terminal screen as a hardware-rendered DirectX scene:
- Quad Batching: Character cells, cursor blocks, and background colors are translated into GPU instanced quads.
- DirectX 12 Shaders: Release builds compile DirectX shaders using Microsoft's FXC shader compiler, eliminating runtime shader overhead.
- Optimized Timer Precision: Configures high-resolution timer scheduling at startup for responsive input and smooth animation.
Kinetic Cursor & Scroll Physics
Rather than jumping instantaneously across characters or snapping line-by-line, Atlas Terminal simulates kinetic motion using critically damped spring equations:
// Exponential approach toward target character cell:
dx = (target_x - current_x) * (1.0 - (-28.0 * dt).exp());
dy = (target_y - current_y) * (1.0 - (-28.0 * dt).exp());
When navigating within a 15-column / 10-row proximity window, the cursor glides smoothly with zero overshoot. For long jumps (clearing the screen or jumping across pages), it snaps instantly to prevent disorienting motion.
History scrolling applies momentum carryover and subpixel row interpolation, allowing buttery smooth navigation through thousands of lines of build logs at your display's full native refresh rate.
Rounded Quad Geometry & Anti-Leak Rules
Windows DWM Acrylic windows have rounded borders (14px outer radius / 13px inner radius). To prevent solid background cells from clipping or poking through the rounded corners, Atlas Terminal enforces strict geometry math in its Rust paint pipeline:
// Cell safe padding prevents text from touching window borders:
.px(px(10.0)).py(px(10.0))
// Non-default background spans touching the window perimeter receive corner radii:
corner_radii: Corners {
bottom_left: px(13.0),
bottom_right: px(13.0),
}
Procedural Vector Box Drawing & Prompt Precision
Modern developer shell prompts (including Starship, Oh-My-Posh, Powerlevel10k, and WSL Arch/Ubuntu default configurations) construct multi-line prompt frames and arrows using Unicode box-drawing characters:
╭─ user@archlinux ─ [~/workspace]
╰─> cargo test
In many terminal emulators, prompt arrows and box lines often look jagged, "painted", or break apart into disconnected pieces when zooming out. Atlas Terminal solves this root architectural cause by implementing a dedicated procedural vector engine inspired by Windows Terminal's AtlasEngine.
The Root Causes: Why Prompts Look "Painted" or Disconnect in Other Terminals
- Font Baseline Drift vs. Cell Center: When terminals rely on font glyphs for rounded corners (
╭, ╰ / U+256D..=U+257F) while procedurally drawing horizontal lines (─ / U+2500), DirectWrite/FreeType positions corners relative to font ascenders, descenders, and hinting baselines. When zooming out, fractional rounding causes the font baseline to drift away from the geometric center of the cell. The corner ends up 1 to 2 pixels higher or lower than the line, creating an ugly detached "bent hook" or gap.
- Square Quad "Stair-Stepping": Some terminals attempt custom arcs by stamping a series of discrete axis-aligned square quads along an arc. Because axis-aligned quads cannot rotate with the curve's tangent vector, at 45° angles their corners form sharp saw-tooth steps that look like low-resolution bitmap paint.
- Rigid Stroke Weights: Hardcoded stroke weights (e.g., fixed 2px) do not scale with font zoom. Zooming out makes lines appear disproportionately heavy, while zooming in makes them appear hairline thin.
The Atlas Procedural Vector Solution
Atlas Terminal bypasses font glyph fallback entirely for all box-drawing and corner characters (U+2500..=U+257F) and renders them procedurally directly on the DirectX GPU:
Performance Benchmarks & Profiling Methodology
Atlas Terminal is benchmarked against leading Windows terminals using reproducible, empirical performance testing. All metrics below were recorded on a standard Windows 11 Pro 64-bit developer system (AMD Ryzen 5 / Intel Core processor, NVMe SSD).
| Performance Metric |
Atlas Terminal |
Windows Terminal |
Alacritty |
WezTerm |
Hyper (Electron) |
| Cold Startup Time |
< 250 ms |
~470 ms |
~210 ms |
~390 ms |
~1,950 ms |
| Memory Usage (Idle) |
~60 MB |
~90 MB |
~55 MB |
~135 MB |
~420 MB |
| Input Latency |
< 5 ms |
18 – 32 ms |
7 – 12 ms |
16 – 28 ms |
45 – 85 ms |
| Streaming Speed |
~20 MB/s |
~10 MB/s |
~22 MB/s |
~9 MB/s |
~2 MB/s |
| Refresh & Motion |
Native Display Rate |
60 Hz |
60 / 144 Hz |
Fixed FPS |
Throttled |
| Idle CPU Usage |
0.0% |
< 0.2% |
0.0% |
0.1% – 0.5% |
1.2% – 3.5% |
How We Profile
- Cold Startup: Clocked from process invocation (
CreateProcessW) until the primary window handle (HWND) is mapped and the initial swapchain frame is presented. Atlas eliminates startup delays by avoiding JIT runtimes or WinUI XAML markup loading.
- Memory Working Set: Sampled using Windows process performance counters (
WorkingSet64 and PrivateMemorySize64) after a quiescent settling delay. Even with a full hardware acrylic composition layer and vector curve tessellation caches, Atlas consumes only ~60MB.
- Timer Precision: Standard Windows applications suffer from coarse timer resolution. Atlas optimizes system timer scheduling at startup, allowing GPUI's event loop to deliver fluid, tear-free motion with zero frame drops.
Reproduce the Benchmark on Your PC
You can verify these measurements locally using the open-source PowerShell benchmark harness included in the repository:
# Run 5-iteration benchmark suite across installed terminals:
irm https://raw.githubusercontent.com/akrram0/atlas-terminal/main/scripts/benchmark.ps1 | iex
# Or inside Atlas Terminal:
atlas bench