Purplemonkey2 by gholk
ExperimentalExperimental
Just like Violentmonkey, but with more unsafe API.
You'll need Firefox to use this extension
Extension Metadata
About this extension
# Purplemonkey
Just like [Violentmonkey], but with more unsafe API.
[Violentmonkey]: https://violentmonkey.github.io/api/gm/
## Purplemonkey API
only the additional api from violent monkey are listed.
other api are same to the violent monkey in the same version.
### GM_messageExtension(id, payload)
send message to other extension's `browser.runtime.onMessageExternal` handler.
* id: the id of the destination extension.
* payload: the data to send. must be structure clonable.
* return: a promise resolve to the response or reject to error.
to use this api, you have to add `@connect web-extension://id`
in the userscript's meta field.
where id is the extension that you want to send message with.
the special `web-extension://*` allow to connect to all the other extensions.
### GM_webextEval(code, args)
eval string or function in violent monkey background script.
* String(code): the code is call as
`(function (...args) {return eval(code)})(...args)`,
so the last statement is return.
* Function(code): code is stringify and reconstructed as function in background.
stringify so any closure will not work.
if this is a method, you should make sure that it could be stringify
and reconstruct correctly.
async could work.
* args: an argument array that structure clonable.
* return: a promise resolve to result or reject to error.
Just like [Violentmonkey], but with more unsafe API.
[Violentmonkey]: https://violentmonkey.github.io/api/gm/
## Purplemonkey API
only the additional api from violent monkey are listed.
other api are same to the violent monkey in the same version.
### GM_messageExtension(id, payload)
send message to other extension's `browser.runtime.onMessageExternal` handler.
* id: the id of the destination extension.
* payload: the data to send. must be structure clonable.
* return: a promise resolve to the response or reject to error.
to use this api, you have to add `@connect web-extension://id`
in the userscript's meta field.
where id is the extension that you want to send message with.
the special `web-extension://*` allow to connect to all the other extensions.
### GM_webextEval(code, args)
eval string or function in violent monkey background script.
* String(code): the code is call as
`(function (...args) {return eval(code)})(...args)`,
so the last statement is return.
* Function(code): code is stringify and reconstructed as function in background.
stringify so any closure will not work.
if this is a method, you should make sure that it could be stringify
and reconstruct correctly.
async could work.
* args: an argument array that structure clonable.
* return: a promise resolve to result or reject to error.
Rate your experience
PermissionsLearn more
This add-on needs to:
- Input data to the clipboard
- Display notifications to you
- Access browser tabs
- Store unlimited amount of client-side data
- Access your data for all websites
More information
- Add-on Links
- Version
- 2.20.0
- Size
- 2.02 MB
- Last updated
- 5 months ago (Jul 21, 2024)
- Related Categories
- License
- MIT License
- Version History
Add to collection
Release notes for 2.20.0
add unsafe api
More extensions by gholk
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet