webext-pegasus

Communication framework for browser extensions, with wings!

MIT License

Downloads
7.7K
Stars
8
Committers
2

webext-pegasus

Communication framework for browser extensions, with wings!

What's included?

  • @webext-pegasus/rpc - Strongly typed RPC (messaging) API that allows M:1 communication between extension surfaces
  • @webext-pegasus/store-zustand - Zustand adapter to share state between pages (content script, injected script, popup, devtools, etc..) and background in web extensions. Based on @webext-pegasus/store.
  • @webext-pegasus/store - APIs for building Redux/Zustand/Mobx/etc applications in Web Extensions.
  • @webext-pegasus/transport - Low level transport layer that allows to use same APIs within all runtime contexts (especially important for reusable components) while mitigating issues like this one zikaari/crx-bridge#11

[!TIP] Please refer to individual package README.md files for respective packages as well as ./packages/example-extension for examples.

Supports

  • Runtime contexts: window (injected script), popup, devtools, content script, background, options, sidepanel (planned)
  • Browsers: Chrome, Firefox, Safari, Opera, Edge + others supported by webextension-polyfill
Package Rankings
Top 27.74% on Npmjs.org
Badges
Extracted from project README
NPM Downloads @webext-pegasus/transport version @webext-pegasus/rpc version @webext-pegasus/store version @webext-pegasus/store-zustand version
Related Projects