Welcome to Scratch Addons' repository!
About
Scratch Addons is a WebExtension (supports both Chrome and Firefox). Scratch Addons' mission is to combine all existing Scratch extensions, userscripts and userstyles into a single easy-to-access place, while still letting users choose which ones to enable.
What's actually an "addon"?
An addon is similar to an extension or a userscript, but they use special APIs provided by the Scratch Addons extension. These APIs allow addons to run scripts on a Scratch page (userscripts), run scripts on the background (persistent scripts), or apply styles to the Scratch website (userstyles).
Userscripts and persistent scripts can use the addon.*
JavaScript APIs, which allow them to obtain Scratch-related information (for example, get the current logged in user) and also use extension APIs (like sending notifications).
Converting an already existing extension/userscript into an addon, or writing your own, is very easy. Check out the guide.
If everything is an addon, then what does Scratch Addons do?
Scratch Addons by itself is just an addon loader. Its main tasks are:
- Allow users to enable, disable and configure addons.
- Run addons and provide APIs to them.
- Provide global state to addons (for example, the
addon.auth
API). - Pollute prototypes for use by addon userscripts.
- Provide ways to access and modify Redux state.
- Avoid addons from interfering with each other.
- Avoid duplicate work from different addons.
Addons outside of Scratch Addons itself
Other extensions (and even forks of Scratch) can also provide their users with most addons from Scratch Addons, as long as a compatibility layer for addon.*
and other parts of the addon loader is present. Notable examples are the Scratch 3 Developer Tools extension and the TurboWarp editor. These also inherit translations from the Scratch Addons project.
Install
From extension stores
↳ Install on Google Chrome, Opera, Brave, Vivaldi, Microsoft Edge (>79), and other Chromium-based browsers.
From source
No build is required. You may download the source code by doing one of these steps.
- Cloning the repository by running
git clone https://github.com/ScratchAddons/ScratchAddons.git
. - Download the zipball of the current state of the repository here.
- Download one of the builds on the releases page. (.zip recommended)
After downloading the extension to your computer, just load it by following these steps.
-
Google Chrome
- Open
chrome://extensions
to open the Extension Management page by typing it into your address bar. - Enable Developer Mode by clicking the toggle switch next to Developer mode.
- Click the
Load unpacked
button on the top and select the extension directory which has themanifest.json
file in it.
- Open
-
Mozilla Firefox
- Open
about:debugging
to open the add-ons page by typing it into your address bar. - Click
This Firefox
on the right-hand menu. - Click
Load Temporary Add-on...
and select themanifest.json
file.
- Open
Contribute
If you found a bug, or want to suggest new features, please use the issues tab. If you want to help with the code or add a new addon, fork this repository, and then create a pull request. Also, please read our contributing guidelines.
License
Scratch Addons is licensed under the terms of the GNU General Public License v3.0.
Other third-party libraries used are listed on https://github.com/ScratchAddons/ScratchAddons/blob/master/libraries/CREDITS.md.