📄️ About
ScratchTools is an open source browser extension. We're completely free, and we're run by dozens of developers from the Scratch community. You can find all of our code in our repository.
📄️ Feature JSON files
ScratchTools uses JSON files to describe how a feature works, what it does, and how it should display on the settings page next to the rest of the features. It's a very important file, and features don't work without them.
📄️ Adding to the features.json file
Once you have your folder for the feature, you can add the feature to the settings page in the /features/features.json file. At the top of the array object in the file, add this:
📄️ Userscripts
Userscripts allow you to inject JavaScript into specific pages of the Scratch website. Here's an example of what a userscript looks like before you add any functions:
📄️ Userstyles
Userstyles allow you to inject CSS into specific pages of the Scratch website. You can access resources via CSS variables, and you can also define your own CSS variables. Keep in mind that CSS variables may conflict with other enabled features, which should only be the case for compatability reasons.
📄️ Best practices
Lots of people contribute code to ScratchTools, meaning code quality is very important. Here are some of our best practices for features.