Skip to content

Repository files navigation

Pen 11

License Platform Python PyQt6

A high-performance, lightweight, and completely free screen annotation tool built specifically and optimized for Windows 11.

Pen 11 Toolbar & Color Palette           Pen 11 Shapes Menu           Pen 11 Cursor Flyout


📖 Story & Motivation

"While taking my NIELIT 'O Level' course, I found myself in need of a good screen annotation tool. However, I quickly realized that most existing options were either locked behind paywalls, bloated with unnecessary features, or suffered from laggy, outdated user interfaces.

Frustrated by these limitations, I decided to build my own solution using AI. The result is Pen 11—a blazing-fast, highly responsive, and meticulously optimized screen marker that respects your system's resources. It is entirely free and open-source, allowing anyone in the community to use it, learn from it, or modify it to suit their own needs."


✨ What's New in This Version: Features & Animation Suite

🎬 60 FPS Fluid Animation Engine

  • Smooth Toolbar Collapse / Expand: When ink is hidden (or toggled via Ctrl+5), the toolbar collapses into a clean, minimal floating pill containing only the unhide button (🙈) and drag handle using QPropertyAnimation with cubic easing curves (InOutCubic, 240ms). Expanding back restores full height with zero visual jumps or layout fighting.
  • Non-Blocking Opacity Transitions: Floating sub-toolbars (Color Palette, Shapes Menu, Cursor Options) fade in and out using InOutSine easing (150ms / 120ms). The animation dynamically reverses from the current opacity when toggled rapidly, completely eliminating snapping or flickering.

🪟 Independent Floating Sub-Toolbars & Smart Drag Persistence

  • Truly Independent Panels: Color Palette, Shapes Menu, and Cursor Toolbars function as modular floating panels. Clicking the main toolbar surface will never close or reset your sub-toolbars.
  • Intelligent Drag Synchronization: When dragging the main toolbar, attached sub-toolbars glide smoothly along with it without restarting animations. Once you independently drag a sub-toolbar to a custom screen position, it remembers its exact coordinates and stays anchored where you placed it.
  • Auto-Dismiss on Tool Switching: Selecting a drawing tool (Pen, Highlighter, Eraser) cleanly dismisses temporary popups while keeping your Color Palette open for continuous work.

🖱️ Zero-Latency Hover & Cursor Engine

  • Native Mouse Tracking & Hover Detection: Sub-toolbar buttons instantly update to PointingHandCursor and display crisp tooltips on hover without stealing window focus from your target applications (Word, browsers, presentations).
  • Multi-Click Responsiveness: Rapidly clicking across color swatches or tool options remains 100% fluid with no cursor lockup or event dropping.

📐 Smart Objects & Pure Vector Selection

  • Oriented Bounding Box (OBB) Engine: Selected strokes and shapes track their exact oriented geometry during rotation, dragging, and scaling.
  • Collision-Resistant Transform Handles: Handle physics (Rotate, Delete, Scale) dynamically adjust spacing to prevent overlap on thin or elongated shapes.
  • Float-Precision Scaling: Scaling objects maintains correct relative stroke widths without nib distortion.
  • Gesture-Based Geometric Detection: Hold your pen for 400ms at the end of a drawing stroke to automatically snap into perfect lines, circles, or ellipses.

💾 Persistent State & Single-Instance Safety

  • Built-in Storage Manager: Automatically saves your custom pen/highlighter/eraser sizes, active colors, shape preferences, and toolbar screen coordinates to disk across sessions.
  • Single-Instance IPC Guard: Inter-process communication via QLocalServer/QLocalSocket guarantees that only one instance of Pen 11 runs at a time, eliminating hotkey conflicts and duplicate processes.
  • Infinite Drawing & OOM Protection: Handles up to 50,000 simultaneous strokes on screen with a massive 5,000-step Undo stack.

💻 System Requirements

Pen 11 is ultra-lightweight, uses almost 0% CPU when idle, and takes less than 50 MB RAM.

  • OS: Windows 10 or Windows 11 (Best experience on Windows 11 / 11 Pro)
  • RAM: 50 MB to 100 MB free memory
  • Graphics: Any basic GPU supporting DirectX 11 (Intel, AMD, NVIDIA)
  • Storage: 40 MB free disk space (Portable .exe — no installation needed)
  • Display: Works on all screen resolutions (720p, 1080p, 2K, 4K) & high refresh rates (60Hz, 120Hz, 144Hz+)

💡 Why it runs so smoothly: Pen 11 uses GPU acceleration (Direct3D 11), high process priority, and 1ms timer precision to deliver a 100% lag-free drawing experience on Windows.


🚀 Installation & Usage

  1. Download: Grab the latest Pen 11.exe from the Releases page.
  2. Run Portable: No installer required! Simply double-click to launch.

📚 How to Use

  • The Main Toolbar: Appears at the top-right of your screen. Drag it anywhere by its top pill handle or background.
  • Drawing Tools: Click Pen (Ctrl+1), Highlighter (Ctrl+2), or Eraser (Ctrl+3). Long-press any tool button to open the instant line size selector.
  • Shapes Sub-Menu: Click the Shape button (📐) to open the geometric palette (Line, Arrow, Rectangle, Rounded Rectangle, Circle, Triangle). Hold Shift while drawing for 1:1 square/circle aspect ratios or 45° angle snapping.
  • Colors Palette: Click 🎨 (Ctrl+P) to toggle the 12-color floating palette. Drag it anywhere on screen.
  • Selection / Lasso Mode: Click ↖️ or press Ctrl+4. Click an object or draw a lasso circle around multiple strokes to move, rotate, scale, or delete them.
  • System Tray: Minimizes to the Windows System Tray with quick access to About, Clear Screen, and Exit.

⌨️ Complete Shortcut Guide

Shortcut Action
Ctrl + 1 Select Pen Tool
Ctrl + 2 Select Highlighter Tool
Ctrl + 3 Select Eraser Tool
Ctrl + 4 Select Cursor / Selection Mode (Lasso & Transform)
Ctrl + 5 Toggle Ink Visibility (Collapses/Expands Toolbar)
Ctrl + Z Undo last stroke
Ctrl + Shift + C Clear Screen
Ctrl + ] Increase Tool Size
Ctrl + [ Decrease Tool Size
Ctrl + P Toggle Color Palette
Ctrl + B Toggle Whiteboard / Blackboard / Transparent Mode
Ctrl + Q Exit Application
Delete / Backspace Delete selected shape (in Selection Mode)
Shift + Draw Snap to regular aspect ratio / 45° line angles

🛠️ Developer & Build Guide

Running from Source

# 1. Clone the repository
git clone https://github.com/Narayan6204/Pen-11.git
cd "Pen-11"

# 2. Install dependencies
pip install -r requirements.txt

# 3. Run the app
python main.py

Compiling Standalone Executable

python -m PyInstaller main.spec --noconfirm

The compiled binary will be placed directly in the dist/ directory as Pen 11.exe.


💖 Support & Donate

If you find Pen 11 helpful for your studies, teaching, or daily workflow and want to support its continued development, you can buy me a coffee by scanning the UPI QR code below!

UPI ID: narayanadev@ptyes

UPI QR Code - narayanadev@ptyes


📄 License & Credits

Released under the MIT License.

Developed with ♥ by Narayan Dev.

About

A high-performance, lightweight, and completely free screen annotation tool optimized for Windows 11.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages