[package] name = "winiterm" version = "0.1.0" edition = "2024" [lib] name = "winiterm" path = "src/lib.rs" [[bin]] name = "winiterm" path = "src/main.rs" [[bin]] name = "bench_process" path = "src/bin/bench_process.rs" [[bin]] name = "bench_render" path = "src/bin/bench_render.rs" [dependencies] # Windows API — PTY (ConPTY), process management, DWM transparency windows = { version = "0.58", features = [ "Win32_Foundation", "Win32_Security", "Win32_System_Console", "Win32_System_Threading", "Win32_System_Pipes", "Win32_Graphics_Dwm", "Win32_UI_WindowsAndMessaging", ]} # Error handling thiserror = "2" # Logging log = "0.4" env_logger = "0.11" # Compact bitfield attributes for terminal cells bitflags = "2" # Window creation and OS event loop winit = "0.30" # GPU rendering (DirectX 12 on Windows via wgpu) wgpu = { version = "22", features = ["wgsl"] } # Minimal async executor for wgpu initialisation pollster = "0.3" # Font discovery (scans C:\Windows\Fonts, pure Rust) fontdb = "0.16" # Font rendering: glyph rasterisation + COLR emoji (pure Rust) swash = "0.1" # Cast structs to byte slices for GPU buffer uploads bytemuck = { version = "1", features = ["derive"] } # Lua 5.4 scripting — config + plugin/event system (Phase 5 & 6) mlua = { version = "0.10", features = ["lua54", "vendored"] } # Filesystem watcher for Lua config hot-reload (Phase 5) notify = "6" # System tray icon for persistence mode (Phase 11) tray-icon = "0.24" # Context menu for the system tray (right-click Show / Quit) muda = "0.19" # Image decoding for Kitty Graphics Protocol (Phase 9) image = { version = "0.25", default-features = false, features = ["png", "jpeg"] } # base64 decoding for Kitty image data (Phase 9) base64 = "0.22" # Clipboard read/write for Ctrl+Shift+V paste arboard = "3" # Unicode character display-width (0=combining, 1=normal, 2=wide/CJK) unicode-width = "0.2" [features] default = [] # Enable per-frame GPU timing instrumentation overlay (Phase 12) render_timing = [] # Strip all logging in release builds production = ["log/release_max_level_off"]