FocusFrame draws a bright, customizable border around the focused window. Runs silently in your system tray. No setup needed.
MIT License · ~700 lines of Python · Zero telemetry
The colored glow shows exactly which window has focus
Multiple monitors. Several VS Code instances. A dozen browser tabs. You press a shortcut — and it fires in the wrong window. You type a command — wrong terminal. You close a document — wrong one.
Which screen has focus? With identical apps open across monitors, there's no clear signal.
You type rm -rf in the production SSH session instead of the dev one. Windows' subtle title bar change isn't enough.
Your audience can't tell which window you're working in. They miss context, you lose time explaining.
FocusFrame adds an unmistakable colored border around the active window. Always visible, never in the way.
A vibrant, fully transparent overlay draws precisely on the active window's edges. True per-pixel alpha — no black halo artifacts.
Optional soft glow fades inward from the border, creating a halo that's visible but never distracting.
The overlay never intercepts clicks, scrolling, or keyboard input. It's completely invisible to your workflow.
No window. No taskbar entry. No Alt+Tab clutter. FocusFrame sits silently in your system tray until you need settings.
Change color, thickness, glow, opacity, and corner radius with sliders. See changes instantly — no restart needed.
The overlay only redraws when the active window changes or moves. No constant rendering loop burning your battery.
A lightweight thread polls GetForegroundWindow() every 50ms. When the focused window or its position changes, the overlay updates.
A RGBA image is generated with PIL — solid border rings plus optional glow fading inward. True per-pixel alpha, no chroma-key tricks.
UpdateLayeredWindow() pushes the BGRA bitmap to a transparent, always-on-top, click-through Win32 overlay. Zero flicker, zero interference.
Every visual parameter is adjustable. Use the live settings panel or edit config.json directly.
{
"border_color": "#0078D4",
"border_thickness": 2,
"glow_enabled": true,
"glow_radius": 8,
"opacity": 0.9,
"corner_radius": 0,
"refresh_rate_ms": 50,
"autostart": false
}
Any hex color. Default: Windows blue
How thick the solid border line is.
Toggle and size of the soft inward glow halo.
Overall transparency of the border overlay.
Round the border corners for a softer look.
Launch FocusFrame at Windows login via the registry.
Instantly spot the active window among 2, 3, or 4 screens.
Multiple VS Code, terminals, browsers — never type in the wrong one.
Your audience always knows which window you're working in.
Understand which session is receiving your input at a glance.
git clone https://github.com/FelixMining/FocusFrame.git
pip install -r requirements.txt
python src/focusframe.py
Requires Python 3.11+ on Windows 10/11. Can also be packaged as a standalone .exe with PyInstaller.