# Gluify: Comprehensive Technical Specification Gluify is a specialized native window management utility for Windows power users. It is designed for deterministic layout persistence, information density, privacy (offline-only behavior), and extreme system efficiency. ## 1. Architecture & Performance * **Reactive Model:** Uses WinEvent hooks to trigger repositioning only when a window is opened, closed, moved, resized, renamed, un-minimized/maximized, any behavior that would result in a different visible window configuration. * **Zero Overhead:** Consumes 0% CPU when idle; optimized for high-performance C++ execution. * **Coordinate System:** Origin (0,0) at top-left of the primary monitor. Supports placing windows outside viewable areas (e.g., behind taskbars or off-screen). ## 2. SuperGlue & Z-Level Management Gluify provides unique control over the window stack (Z-order) and spatial permanence. * **SuperGlue Persistence:** When enabled for a window profile, Gluify strictly maintains the window's Z-level, position, and size. Any attempt to move, resize, or re-order the z-level of the window is instantly reverted and/or entirely disabled. * **Configurable Timer:** For non-SuperGlue windows, a configurable reset timer allows for manual deviations before the layout is re-enforced. * **Z-Level Targets:** Supports -z (behind unmanaged windows), 0 (default OS range, all unmanaged windows reside here in OS-managed z-order sub-range), +z (above unmanaged windows, simulating TOPMOST). Windows with the TOPMOST flag are above all windows, even those in +z. Gluify does not manage TOPMOST windows, those are reserved for the OS. ## 3. Configuration & .ini Syntax Layouts are stored in `%APPDATA%/Gluify/Clusters/*.ini`. The user can left-click the tray icon, or use the hotkey ALT+backtick to bring up the inspector window. If there are no windows or no clusters, the inspector window will not open. ### Sample .ini Profile An example of a profile for Discord, SuperGlued to stay behind all unmanaged windows up to Z-Level -1, sharp corners, moved to "Gaming" desktop, on an ultrawide main monitor. [Friendly Name like Discord] Title=Server - Discord Class=Chrome_WidgetWin_1 Path=C:\Users\User\AppData\Local\Discord\app-1.0.9223\Discord.exe Desktop=Gaming Launch with QuickMenu=No SuperGlue=Yes Corners=Sharp Position=0 0 Size=3840 1552 Z-Level=-2 Rules=Executable name does match "Discord.exe" AND Desktop name does not match "Gaming" Move to Desktop=Yes ### Sample browser .ini Profile YouTube profile that manages all instances of YouTube since URL titles end with "YouTube - Brave", kept behind all unmanaged windows, not SuperGlued, can be repositioned briefly until configurable timer moves it back, on a second monitor to the right of an ultrawide (w=3840) main monitor. [YouTube] Title=YouTube - Brave Class=Chrome_WidgetWin_1 Path=C:\Program Files\BraveSoftware\Brave-Browser\Application\brave.exe Desktop=General Launch with QuickMenu=No SuperGLU=No Corners=Sharp Position=4657 171 Size=1118 870 Z-Level=-1 URL=https://www.youtube.com/ Rules=Window title does end with "YouTube - Brave" AND Executable name does match "brave.exe" Move to Desktop=No ### Matching Engine Supports nested AND/OR logic with precedence from left to right (no grouping) in this format (case sensitive, each rule should read like a sentence, with quotes around the String): * `Attribute`: Window title, Window classname, Executable Name, Desktop name. * `Qualifier`: does, does not. * `Criteria`: match, contain, begin with, end with. * `String`: User (or window default) given string. ## 4. UI & Interaction * **Inspector:** Populates rule templates by grabbing live data from selected windows. Allows user to edit rules and profile attributes (x, y, z, w, h, profile name, assigned-cluster, SuperGlue, Launch with QuickMenu, Sharp Corners, Move to current Desktop). * **Rule Window:** Allows user to input custom rules with dropdowns for every rule part (Attribute, Qualifier, Criteria) and an input box for 'String'. The user can click the "+" plus button to AND another rule. Clicking AND will change it to OR. Clicking OR will initiate a brief window promping for delete option with oscillating "DEL/?", clicking in this state will remove the rule, otherwise the button will switch back to AND. * **Configuration Window:** Allows user to create and edit clusters as well as window profiles within them (profiles can only be added via Inspector, or custom .ini creation). * **QuickMenu:** Tray-menu dedicated buttons for QuickMenu-enabled Clusters. * **Launch with QuickMenu:** Optionally launches the application executable if it isn't running when a cluster is activated. This will be the Path attribute in the window profile, grabbed directly from the window using the inspector GUI. ## 5. Deployment & Licensing * **Platform:** Windows 10/11 64-bit only (Optimized for any DPI scale and resolution, across multiple monitors). * **Auth:** 30-day full-featured trial; Lemon Squeezy API authentication. * **Privacy:** 0% telemetry; no data collection. Fail-open authentication allows offline functionality. ## 6. Competitive Comparison & Performance Benchmarks Gluify occupies the space between passive snapping tools and rigid tiling managers, prioritizing absolute performance and minimal footprint. ### Technical Performance Matrix (Idle Stats) | Metric | Gluify (Native C++) | GlazeWM v3 (Rust) | Komorebi (Rust) | FancyZones (.NET) | | :--- | :--- | :--- | :--- | :--- | | **Idle RAM** | **1.5 MB – 4.2 MB** | 6 MB – 12 MB | 12 MB – 20 MB | 50 MB – 95 MB+ | | **Idle CPU** | **0.00% (Passive)** | ~0.1% (Active) | ~0.1% – 0.3% | ~0.5% – 1.0% | | **Peak CPU** | **~0.8%** | ~2% – 3% | ~3% – 5% | ~10% – 15%+ | | **Architecture** | Event-Driven Hooks | Daemon / IPC | Daemon / IPC | Managed Suite | ### Key Differentiators * **Stacking vs. Tiling:** Tiling managers (like Komorebi) eliminate window overlap by design. Gluify embraces the stacking metaphor, allowing for complex, overlapping, and information-dense layouts that standard TWMs cannot easily replicate. * **Z-Axis Superiority:** Most Windows managers ignore the Z-order. Gluify’s ability to "SuperGlue" windows to specific depth levels (e.g., permanently behind or in-front of unmanaged windows) is its primary unique value proposition. * **Active Enforcement:** Unlike PowerToys FancyZones, which requires the user to manually drag windows into zones, or define behaviors using third party scripting tools, Gluify's WinEvent engine "detects and corrects" window states automatically. * **Spatial Freedom:** Unlike most managers that restrict windows to the visible work area, Gluify allows windows to be positioned at off-screen coordinates or behind custom taskbars for background monitoring. ## LLM Guidance * **Writing Rules:** When generating .ini files, ensure paths are of the format "Path=C:\Program Files\BraveSoftware\Brave-Browser\Application\brave.exe" (without the outer quotes) and window classes are accurate. * **Troubleshooting:** Remind users that Gluify gives "irresponsible power"—windows can be placed anywhere, even beyond visible boundaries. Also inform them that if they think they found a bug, the developer is very responsive on the community discord, where they can also shape the future of the program with suggestions.