Skip to content

A fast, private, offline-first Chrome extension that captures screenshots and provides powerful annotation tools. Perfect for creating tutorials, bug reports, presentations, and documentation.

License

Notifications You must be signed in to change notification settings

carthworks/Screenshotify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Screenshotify

Professional Screenshot & Annotation Chrome Extension

A fast, private, offline-first Chrome extension that captures screenshots and provides powerful annotation tools. Perfect for creating tutorials, bug reports, presentations, and documentation.

Screenshotify Screenshot

✨ Features

🎨 Powerful Annotation Tools

  • Pen Tool - Free-hand drawing with customizable colors and thickness
  • Shapes - Rectangle, ellipse, and arrow annotations
  • Text - Add text labels with custom colors and sizes
  • Highlight - Semi-transparent highlighting for emphasis
  • Number Markers - Add numbered steps for tutorials
  • Blur Tool - Pixelate sensitive information
  • Eyedropper - Pick colors directly from your screenshot

βœ‚οΈ Advanced Editing

  • Crop - Trim screenshots to focus on important areas (with full undo support!)
  • Zoom - Zoom in/out for precise editing (Ctrl + Mouse Wheel)
  • Undo/Redo - Full history support (Ctrl+Z / Ctrl+Y)

🎯 Key Features

  • βœ… Offline & Private - All processing happens locally in your browser
  • βœ… No Account Required - Start using immediately
  • βœ… Keyboard Shortcuts - Fast workflow with hotkeys
  • βœ… Modern UI - Beautiful, intuitive interface with gradient design
  • βœ… High Quality - PNG format for crisp screenshots
  • βœ… Quick Capture - One-click screenshot capture

πŸ”’ Privacy First

  • βœ… No data collection
  • βœ… No external servers
  • βœ… No tracking
  • βœ… 100% offline processing
  • βœ… Your screenshots stay on your device

πŸš€ Installation

From Chrome Web Store

Coming soon...

From Source (Development)

  1. Clone this repository:
git clone https://github.com/carthworks/Screenshotify.git
cd Screenshotify
  1. Load in Chrome:
    • Open Chrome and navigate to chrome://extensions/
    • Enable "Developer mode" (toggle in top right)
    • Click "Load unpacked"
    • Select the Screenshotify directory

πŸ“– Usage

Quick Capture

  1. Click the Screenshotify icon in your toolbar
  2. Click "Quick Capture" or press Ctrl+Shift+S
  3. The screenshot opens in the annotation window

Annotation Tools

Tool Description Shortcut
Pen Free-hand drawing P
Rectangle Draw rectangular shapes -
Ellipse Draw circular/oval shapes -
Arrow Point to important areas -
Text Add text labels -
Highlight Semi-transparent highlighting -
Number Add numbered markers -
Blur Pixelate sensitive information -
Eyedropper Pick colors from screenshot -
Crop Trim the image -

Keyboard Shortcuts

Action Shortcut
Capture Screenshot Ctrl+Shift+S
Toggle Pen Tool P
Undo Ctrl+Z
Redo Ctrl+Y
Zoom In Ctrl + Scroll Up
Zoom Out Ctrl + Scroll Down
Cancel Esc

Customize shortcuts at chrome://extensions/shortcuts

🎨 Annotation Features

Drawing Tools

  • Pen - Free-hand drawing with adjustable thickness and color
  • Shapes - Rectangle, ellipse, and arrow with customizable colors
  • Text - Add text with custom font size and color
  • Highlight - Semi-transparent marker for emphasis

Privacy Tools

  • Blur - Pixelate sensitive information (adjustable strength)
  • Crop - Remove unwanted areas (with undo!)

Utility Tools

  • Eyedropper - Pick any color from your screenshot
  • Number Markers - Add numbered steps for tutorials
  • Zoom - Zoom in for pixel-perfect annotations

Editing Features

  • Undo/Redo - Full history support with Ctrl+Z/Y
  • Color Picker - Choose any color for annotations
  • Thickness Control - Adjust pen and shape thickness
  • Font Size - Customize text size

βš™οΈ Settings

Access settings by clicking the gear icon in the popup.

General Settings

  • Image Format - PNG (lossless) or JPEG (smaller)
  • JPEG Quality - Compression level for JPEG
  • Blur Strength - Default blur intensity (5-30)
  • Auto-downscale - Resize large images for performance

Appearance

  • Theme - Light or dark mode (automatic)

πŸ”’ Privacy & Security

  • βœ… All processing happens locally in your browser
  • βœ… No data sent to external servers
  • βœ… No tracking or analytics
  • βœ… No user accounts or sign-in
  • βœ… Open source - inspect the code yourself
  • βœ… Manifest V3 compliant

πŸ› οΈ Development

Project Structure

Screenshotify/
β”œβ”€β”€ manifest.json              # Extension manifest (MV3)
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ background/
β”‚   β”‚   └── service_worker.js  # Background service worker
β”‚   β”œβ”€β”€ popup/
β”‚   β”‚   β”œβ”€β”€ popup.html         # Extension popup
β”‚   β”‚   β”œβ”€β”€ popup.css          # Modern gradient design
β”‚   β”‚   └── popup.js
β”‚   β”œβ”€β”€ annotate/
β”‚   β”‚   β”œβ”€β”€ annotate.html      # Annotation interface
β”‚   β”‚   β”œβ”€β”€ annotate.css       # Annotation styles
β”‚   β”‚   └── annotate.js        # Annotation logic
β”‚   β”œβ”€β”€ options/
β”‚   β”‚   β”œβ”€β”€ options.html       # Settings page
β”‚   β”‚   β”œβ”€β”€ options.css
β”‚   β”‚   └── options.js
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ canvas-utils.js    # Canvas operations & blur
β”‚   β”‚   └── upload.js          # Upload utilities
β”‚   └── icons/
β”‚       β”œβ”€β”€ icon16.svg
β”‚       β”œβ”€β”€ icon48.svg
β”‚       └── icon128.svg
└── README.md

Building for Production

Create a ZIP file for Chrome Web Store submission:

# Windows PowerShell
.\package-extension.ps1

Or manually:

# Create ZIP with manifest.json and src/ folder
zip -r Screenshotify.zip manifest.json src/

Testing

  1. Load the extension in Chrome:

    • Navigate to chrome://extensions/
    • Enable "Developer mode"
    • Click "Load unpacked"
    • Select the project directory
  2. Test all features:

    • Capture screenshot
    • Try all annotation tools
    • Test crop and zoom
    • Test undo/redo
    • Test eyedropper
    • Test text input

πŸ“‹ Chrome Web Store Submission

See CHROME_STORE_SUBMISSION.md for detailed submission guide.

Quick Checklist

  • βœ… Manifest V3 compliant
  • βœ… Privacy policy included
  • βœ… All features tested
  • βœ… Screenshots prepared (1280x800px)
  • βœ… Store icon (128x128px)
  • βœ… Detailed description ready

🎯 Use Cases

Perfect For:

  • πŸ“š Creating tutorials - Use number markers and arrows
  • πŸ› Bug reports - Highlight issues and add annotations
  • πŸ“– Documentation - Annotate screenshots for wikis
  • πŸŽ“ Educational content - Create step-by-step guides
  • πŸ’Ό Presentations - Enhance slides with annotations
  • πŸ”’ Privacy - Blur sensitive information before sharing

πŸ†• Recent Updates

v1.0.0 (December 2024)

  • βœ… Fixed text tool - now saves correctly
  • βœ… Improved highlight tool - smooth continuous strokes
  • βœ… Enhanced crop - full undo support with confirmation
  • βœ… Better popup UI - modern gradient design
  • βœ… Eyedropper fix - instant color picking
  • βœ… Service worker fix - thumbnail generation
  • βœ… Removed OCR - focused on core annotation features

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

How to Contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

MIT License - see LICENSE file for details

πŸ™ Acknowledgments

  • Chrome Extension APIs
  • Canvas API for drawing and image manipulation
  • All contributors and users

πŸ“ž Support

πŸ—ΊοΈ Roadmap

Planned Features:

  • Full-page screenshot capture (scroll capture)
  • Video recording
  • More annotation shapes (triangle, star, line)
  • Custom color palettes
  • Export to PDF
  • Batch processing
  • Cloud sync (optional)
  • Collaboration features

Completed:

  • Basic screenshot capture
  • All annotation tools
  • Crop with undo
  • Zoom functionality
  • Blur tool
  • Eyedropper
  • Modern UI
  • Keyboard shortcuts
  • History management

πŸ’‘ Tips & Tricks

Pro Tips:

  • Use number markers for step-by-step guides
  • Pick colors with eyedropper for brand consistency
  • Blur sensitive information before sharing screenshots
  • Zoom in for pixel-perfect annotations
  • Use Ctrl+Z to undo mistakes
  • Crop with confirmation to avoid accidental crops

Keyboard Workflow:

  1. Ctrl+Shift+S - Capture
  2. P - Switch to pen
  3. Draw annotations
  4. Ctrl+Z - Undo if needed
  5. Download or copy

Made with ❀️ for productivity and privacy

⭐ Star this repo if you find it useful!

About

A fast, private, offline-first Chrome extension that captures screenshots and provides powerful annotation tools. Perfect for creating tutorials, bug reports, presentations, and documentation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published