Pratik Kadole
Experimental2026 · Solo Creator

AetherOS Browser Compositor & Window Manager

An experimental in-browser desktop operating environment featuring custom WebGL glass shaders, LRU depth stacking, and local state serialization.

The Problem

Standard web applications run in rigid, isolated DOM tabs. Creating a fluid, multi-window desktop interface inside the browser typically causes heavy repaint hitches when using CSS filters and z-index drift over extended user sessions.

The Approach

Engineered a modular window manager state machine supporting drag, resize, minimize, maximize, and focus depth tracking. Offloaded optical glass refraction to a custom WebGL fragment shader passing window bounding boxes as uniform vectors, and used IndexedDB for session persistence.

Key Architectural Decision

Rather than endlessly incrementing z-index on window clicks (which eventually causes integer drift and modal layering bugs), implemented an LRU-ordered focus stack that normalizes active window depths to a tight bounded array, guaranteeing deterministic rendering.

Tradeoffs & Constraints

Multi-window floating interfaces require distinct mobile fallback handling. On small touchscreens, the system automatically transitions into an optimized full-screen workspace drawer.

Project Motivation

AetherOS explores how far modern client-side web technologies can go in replicating the fluid interactivity, window management, and optical depth of a native operating system compositor.

Core Architectural Layers

  • Compositor & Window Manager: State machine governing coordinate mathematics, bounding box constraints, minimize/maximize animations, and LRU focus stacks.
  • WebGL Shader Pipeline: Custom GLSL fragment shaders applying real-time refraction and optical distortion directly via GPU uniform buffers, bypassing costly DOM repaints.
  • Storage Engine: Serializes complete workspace states, open window layouts, and application registries to local browser IndexedDB.