Adds a customizable context menu with spellcheck, text actions, image/video handling, and link support to Electron apps.
electron-context-menu is a library that adds a fully-featured, customizable context menu to Electron applications. It solves the problem of Electron's lack of a built-in context menu by providing intelligent menu items that appear based on what the user right-clicks (text, images, links, videos), including spellcheck support and development tools.
Electron developers building desktop applications who need to implement right-click context menus without reinventing the wheel or dealing with platform-specific nuances.
Developers choose this because it offers a polished, native-like context menu out of the box with sensible defaults, extensive customization options, and seamless integration with Electron's spellcheck and development workflows, saving significant development time.
Context menu for your Electron app
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Automatically shows relevant items like Cut/Copy/Paste for text, Save Image for images, and Copy Link for links based on what the user right-clicks, eliminating manual detection logic.
Includes Learn Spelling and dictionary suggestions when right-clicking misspelled words, seamlessly working with Electron's built-in spellcheck for a native feel.
Adds an Inspect Element menu item in development mode by default, enabling quick debugging similar to Chrome's dev tools without extra configuration.
Allows prepending or appending custom menu items via 'prepend' and 'append' options, and supports label overrides for i18n, as shown in the advanced examples.
Using the 'menu' option for full control overrides other settings and requires deep knowledge of Electron's MenuItem API, making it error-prone for simple tweaks.
The macOS Services submenu is disabled by default due to a bug in Electron that prevents native behavior, reducing consistency for some use cases.
This package only works in the main process, which can complicate architecture for apps that prefer to handle UI logic in the renderer process.