This tool helps you focus while reading or coding by adding:
- A pencil-style overlay cursor
- A click blocker to prevent distractions
- A blur overlay for the taskbar or screen
- A focus frame that dims everything except selected areas
- An alt tab blocker to prevent switching programs
Recommended tools for reading with:
- ppInk - Screenshot annotation for capturing insights for a quick second to understand stuff
- ShareX - for the same reason as above great tool in general as well,ur choice. use both i would say
- Any pomodoro timer - Session management and focus structuring
- will recommend taking notes by hands i.e. paper or ipad than typing for learning but this is just my opinion,take it with a grain of salt
Typical session: Start timer → Enable focus frame → Read without distractions → Capture key insights with ppInk/sharex → Repeat
Just run the .exe from release
- Requires AutoHotkey v2.0+
- Run
reading_focus_overlay.ahk(or compile it into an .exe using Ahk2Exe) - Use the default hotkeys:
Ctrl + Shift + R= Toggle pencil overlayCtrl + Shift + B= Toggle click blockCtrl + Shift + D= Toggle taskbar dimmingCtrl + Shift + F= Toggle focus frameCtrl + Shift + '= Toggle alt tab blockShift + Esc= Re-select focus areaEsc= Leave selection mode of focus area
- Quick selection of rectangular areas to focus on
- Simply click and drag to create a rectangular focus area
- Best for standard document layouts
- Create custom-shaped focus areas with multiple points
- Perfect for irregular content layouts, multiple areas of interest, or complex UI elements
- Multi-Polygon Workflow:
- Click points to create the first polygon (at least 3 points)
- Press
Enterto complete the current polygon - Start clicking to create additional polygons as needed
- Press
Enterafter each polygon to add it to your selection - Press
Spacewhen finished to finalize all polygons and exit selection mode - Press
Backspaceto remove the last added polygon if needed
- Create multiple rectangular selections in a single session
- Perfect for selecting several separate text blocks, code sections, or interface elements
- Multi-Rectangle Workflow:
- Click and drag to create the first rectangle
- Click and drag to create additional rectangles as needed
- Press
Enterwhen finished to finalize all rectangles and exit selection mode - Press
Backspaceto remove the last added rectangle if needed
- Uses the same plus cursor as polygon mode for consistency
- Switch between modes using the toolbar or number keys
- Visual toolbar appears during selection with helpful buttons:
- Rectangle mode (□): Select rectangular areas
- Multi-Rectangle mode (⌐): Select multiple rectangular areas
- Polygon mode (⬡): Select custom-shaped areas
- Cancel (✕): Exit selection mode
- Active mode is highlighted in green
1= Switch to Rectangle mode2= Switch to Multi-Rectangle mode3= Switch to Polygon mode4= Cancel selectionEnter= Complete current polygon (in Polygon mode) or finish all rectangles (in Multi-Rectangle mode)Space= Finalize all polygons and exit selection (in Polygon mode only)Backspace= Remove last added point/polygon (in Polygon mode) or remove last rectangle (in Multi-Rectangle mode)Shift + Backspace= Remove last added polygon (in Polygon mode only)Esc= Cancel selection and exit
Open config.ahk and change the hotkey values at the top.
There is no UI — just edit the file and restart the script.
- main.ahk
- config.ahk
- pencil_overlay.ahk
- distraction.ahk
- focus_frame.ahk
- Gdip_All.ahk
- pencil.png
- invisible-cursor.cur
- plus_cursor.cur
- alttab_blocker.ahk
Note on Antivirus Flags
Some antivirus engines may flag the compiled .exe due to use of AutoHotkey, Windows API calls (like SetSystemCursor), or file embedding (FileInstall). This is a known false positive with AHK scripts.
To be 100% sure, you're welcome to inspect or run the script directly, or compile it yourself using Ahk2Exe. That's the whole reason I made it open source.
UPDATE:no new releases after this,this will be ported to cpp for better performance and control this project is whole in itseld with ahk with only few minor things left which cannot be done easily in autohotkey and fulfils my need,see u in the new port whenever i start on it. can fix some stuff here and there if theres something majorly wrong.

