Quiet Mind Creative

The Easy Screenshot Plus Firefox extension annotating a web page

Easy Screenshot Plus

View on Firefox Add-ons →

Easy Screenshot Plus is a Firefox extension based on the open-source Easy Screenshot project.

I originally started using Easy Screenshot and appreciated how quickly it allowed me to capture and annotate screenshots without leaving the browser. One small detail continually frustrated me, though: every time I saved a screenshot, the extension defaulted to a different folder than the one I actually used.

It wasn’t a major problem, but it was the kind of friction that becomes noticeable when you repeat the same workflow dozens of times per week.

I decided to fix it.

That small change led me to explore the codebase, and before long I was adding additional features and workflow improvements that eventually became Easy Screenshot Plus.

Easy Screenshot Plus extends the original foundation with additional capabilities and refinements while preserving the fast, browser-native workflow that made the project appealing in the first place.

My Contributions

While the original Easy Screenshot project provided a solid foundation, I focused on adding features that made the extension more flexible and efficient for everyday use.

Notable additions include:

  • Configurable default save locations to better match individual workflows
  • Configurable toolbar actions, allowing users to choose exactly what type of screenshot is captured when clicking the extension button
  • Secondary toolbar actions that can be triggered by holding the Control or Command key while clicking the extension button
  • Customizable keyboard shortcuts for opening the screenshot menu or capturing specific screenshot types directly
  • Annotation tools with support for lines and optional arrowheads on one or both ends
  • Additional usability improvements and workflow refinements throughout the extension

These enhancements focused on reducing friction and giving users more control over how they capture and annotate screenshots.

Technical Challenges

One particularly interesting challenge involved adding editable annotations.

The original extension rendered annotation shapes directly into the image bitmap, making them effectively permanent once created. Supporting selection, movement, and modification of annotations required rethinking that approach and introducing a model where annotation objects could be maintained independently from the underlying image.

Working through that problem deepened my understanding of canvas rendering, state management, undo/redo systems, and the tradeoffs between raster and object-based editing architectures.

What I Learned

Working on Easy Screenshot Plus provided hands-on experience with:

  • Firefox WebExtensions APIs
  • Maintaining and extending a forked open-source project
  • Designing features around real-world user workflows
  • Balancing new functionality with simplicity
  • Shipping updates to a production browser extension

The project was also a reminder that valuable software doesn’t always begin as a blank repository. Sometimes the most impactful work comes from taking an existing tool, understanding its strengths, and thoughtfully improving it for a specific audience.

Perhaps more importantly, it reinforced how seemingly simple feature requests can expose deeper architectural constraints. A feature that appears straightforward from a user’s perspective often requires rethinking assumptions that were made years earlier in the design of the system.