Skip to content

Commit cbe89fb

Browse files
authored
Merge branch 'main' into main
2 parents f464758 + 89f5c6d commit cbe89fb

File tree

25 files changed

+599
-404
lines changed

25 files changed

+599
-404
lines changed

README.md

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<br />
1414
<a href="https://youtu.be/xXuZAWTmXng">Feature Showcase</a>
1515
·
16-
<a href="https://github.com/STForScratch/ScratchTools/issues/new?assignees=&labels=feature&template=bug_report.md&title=">Report a Bug</a>
16+
<a href="https://github.com/STForScratch/ScratchTools/issues/new?assignees=&labels=bug&projects=&template=--bug.yml">Report a Bug</a>
1717
·
1818
<a href="https://github.com/STForScratch/ScratchTools/issues/new?assignees=&labels=feature&template=feature_request.md&title=">Request feature</a>
1919
</p>
@@ -28,7 +28,7 @@
2828
- [Scratch APIs](#scratch-apis)
2929
- [Basics](#basics)
3030
- [Blockly Context Menus](#blockly-context-menus)
31-
- [Sound , GUI and Paint-Mode](#sound-gui-and-paint-mode)
31+
- [Sound, GUI and Paint-Mode](#sound--gui-and-paint-mode)
3232
- [Logging](#logging)
3333
- [How to Support without Code](#how-to-support-without-code)
3434

@@ -37,14 +37,27 @@ We're a browser extension for the Scratch website that makes Scratch look, work,
3737

3838
### Installing
3939
There are multiple ways of installing.
40-
- Chrome: You can download from Chrome [here](https://chrome.google.com/webstore/detail/scratchtools/jjnpbalpllpfdpgplpbcbadkgdmleopm). Then just press the Add to Chrome button, and you've downloaded ScratchTools!
41-
- Firefox/Mozilla: You can download for Firefox [here](https://addons.mozilla.org/en-US/firefox/addon/scratchtools/). You can then just add it to Firefox, and then you have ScratchTools!
40+
- Chrome: You can download from Chrome's Extension Webstore [here](https://chrome.google.com/webstore/detail/scratchtools/jjnpbalpllpfdpgplpbcbadkgdmleopm). Then just press the Add to Chrome button, and you've downloaded ScratchTools!
41+
42+
> [!NOTE]
43+
> If you are using a browser based on Chromium (eg. Brave), then this is your way of installing unless your browser has it's own extension store.
44+
45+
- Firefox/Mozilla: You can download from Firefox Addons (Works on Firefox forks) [here](https://addons.mozilla.org/en-US/firefox/addon/scratchtools/). You can then just add it to Firefox, and then you have ScratchTools!
46+
4247
> [!NOTE]
4348
> The Firefox version of Scratchtools is behind compared to the chrome version of Scratchtools due to technical difficulties. Until a solution is found, the Firefox version will remain behind.
4449
45-
- Microsoft edge: You can download for Edge [here](https://microsoftedge.microsoft.com/addons/detail/scratchtools/aaidjeidbnhpjhblbianjeghjopbimmk). You can then just add it to Edge, and then you have ScratchTools!
46-
- Safari (macOS, iPadOS and iOS): You can build the extension by typing `make` for macOS, and `make ios` for the iOS app (you will have to sign it on Xcode), make sure you have enabled Developer mode and allowed unsigned extensions.
47-
- GitHub: Download from GitHub [here](https://github.com/STForScratch/ScratchTools/zipball/master). If it downloads a `.zip` file, unpack it. Then, with the folder, go to `chrome://extensions`, make sure you have developer mode enabled (switch in the top right corner), and drag the downloaded folder onto the page. Make sure you've disabled other versions of ScratchTools.
50+
- Microsoft Edge: You can download from Edge's addon webstore [here](https://microsoftedge.microsoft.com/addons/detail/scratchtools/aaidjeidbnhpjhblbianjeghjopbimmk). You can then just add it to Edge, and then you have ScratchTools!
51+
- Safari (macOS, iPadOS and iOS): You can build the extension by typing `make` for macOS, and `make ios` for the iOS app (you will have to sign it on Xcode), make sure you have enabled Developer mode and allowed unsigned extensions.
52+
53+
- GitHub (For Chrome/Chromium): Download the zipball from the GitHub repository [here](https://github.com/STForScratch/ScratchTools/zipball/master). After the `.zip` file is downloaded, unpack it. Then, with the folder, go to `chrome://extensions` (On Chromium forks, you will often need to replace "chrome" with your browser's name. (eg. `brave://extensions`)), make sure you have developer mode enabled (switch in the top right corner), and drag the downloaded folder onto the page. Make sure you've disabled other versions of ScratchTools.
54+
55+
- GitHub (For Firefox & Firefox Forks): Download from the GitHub repository [here](https://github.com/STForScratch/ScratchTools/zipball/master). After the `.zip` file is downloaded, unpack it. Then, with the folder, go to `about:debugging`, click "This Firefox" and click "Load temporary extension", go into the extension folder and select the `manifest.json`.
56+
57+
> [!WARNING]
58+
> Extensions loaded this way onto Safari indeed temporary. Once you close the window, it will be gone. In addition, ScratchTools is still outdated on Firefox at the time of writing this.
59+
60+
- Installing with Git: Open the code dropdown on the extension's repository, copy the HTTPS url and then execute `git clone https://github.com/STForScratch/ScratchTools.git -b main` in Git, and you have installed ScratchTools! To pull changes instead of cloning the repository, enter the folder and execute `git remote add upstream https://github.com/STForScratch/ScratchTools.git -b main`. When a commit is made to the repository, you can just run `git pull upstream master` to pull the changes, note that sometimes you may need to refresh ScratchTools.
4861

4962
### Building a Feature
5063
It's not very hard to build a feature, and if you're ever having trouble, our developers are always here to help you! For ideas, code help, beta testing for your features, and more, you can [join our Discord server](https://discord.gg/5AkUsCbEsy). Now, here's how to build a feature!
@@ -72,9 +85,9 @@ Logging can be very important, especially when testing. You can use `ScratchTool
7285

7386
### How to Support without Code
7487
Not only do you have to be a developer to code for ScratchTools (technically, we would teach you if you wanted help), but you can also be a beta tester, suggest ideas, design our website, create art, and more! Here are some common things people like to help with:
75-
- **Beta testing.** You can search for bugs and then report them [here](https://scratchtools.app/bugs/). Just [download](https://github.com/STForScratch/ScratchTools/zipball/master) the newest changes from GitHub, and add them to your browser! [Here's how to add Chrome Extensions without the Chrome Webstore.](https://www.labnol.org/internet/install-chrome-extensions/25817/)
88+
- **Beta testing.** You can search for bugs and then report them [here](https://www.scratchtools.app/feedback/). Just [download](https://github.com/STForScratch/ScratchTools/zipball/master) the newest changes from GitHub, and add them to your browser! [Here's how to add Chrome Extensions without the Chrome Webstore.](https://www.labnol.org/internet/install-chrome-extensions/25817/)
7689
- **Website.** If you know HTML or CSS, we could really use your help on our website! We aren't looking for big changes, but we'd love your help with it anyways! Let us know by creating an issue or contacting a developer!
7790
- **Graphic Designer.** If you're an artist or designer, you can help us! We need banners, cool art, and more! We love all kinds of styles, you can contact us by creating an issue or contacting a developer!
78-
- **Brainstorming.** If you have ideas, you can suggest them on our [feedback section](https://scratchtools.app/feedback/)!
91+
- **Brainstorming.** If you have ideas, you can suggest them on our [feedback page](https://scratchtools.app/feedback/), [Community Discord](https://server.scratchtools.app/) or [create an issue suggesting it](https://github.com/STForScratch/ScratchTools/issues/new?assignees=&labels=new+feature&projects=&template=--feature.yml)!
7992
- **Posting.** Feel free to post about us on social media! We'd love to help as many Scratchers as possible, so every post helps!
8093

SECURITY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ We only support security issues from versions currently hosted on either Chrome,
1111

1212
## Reporting a Vulnerability
1313

14-
Please do not report any vulnerabilities publicly. Please only report them at https://scratchtools.app/bugs - our official bugs site. There are links to bug and security bug forms.
14+
Please do not report any vulnerabilities publicly. Please only report them at https://scratchtools.app/feedback - our official bugs site. There are links to bug and security bug forms.

extras/feature-locales/en.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

extras/game/assets/logo.svg

Lines changed: 4 additions & 0 deletions
Loading

extras/game/index.html

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<title>Clicker Game</title>
5+
<meta charset="utf-8" />
6+
<meta name="viewport" content="width=device-width, initial-scale=1" />
7+
<link rel="stylesheet" href=".\style.css" />
8+
<script src=".\script.js" async></script>
9+
</head>
10+
<body id="body">
11+
<div class="clicker-layer">
12+
<img src=".\assets\logo.svg" id="click">
13+
</div>
14+
<div class="text-layer"><h1>0</h1></div>
15+
</body>
16+
</html>

extras/game/script.js

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
const run = async () => {
2+
try {
3+
let { game: storage } = await chrome.storage.sync.get("game");
4+
var starterStorage = { "version": 1, "clicks": 0 };
5+
6+
// check if storage is trustworthy
7+
if (storage && typeof storage === 'object' && typeof storage.clicks === 'number') {
8+
document.querySelector('.text-layer h1').textContent = String(storage.clicks);
9+
console.log(storage.clicks);
10+
document.getElementById("click").draggable = false;
11+
document.getElementById("click").addEventListener("click", async () => {
12+
storage.clicks += 1;
13+
document.querySelector('.text-layer h1').textContent = String(storage.clicks);
14+
await chrome.storage.sync.set({ "game": storage });
15+
});
16+
} else {
17+
await chrome.storage.sync.set({ "game": starterStorage });
18+
location.reload();
19+
}
20+
} catch (error) {
21+
console.error("Error during storage retrieval:", error);
22+
}
23+
}
24+
25+
const reset = async () => {
26+
try {
27+
await chrome.storage.sync.remove("game");
28+
location.reload();
29+
} catch (error) {
30+
console.error("Error during storage removal:", error);
31+
}
32+
}
33+
34+
// JavaScript
35+
var clickElement = document.getElementById('click');
36+
37+
clickElement.addEventListener('mousedown', function() {
38+
this.classList.add('scale-down');
39+
});
40+
41+
clickElement.addEventListener('mouseup', function() {
42+
this.classList.remove('scale-down');
43+
});
44+
clickElement.addEventListener('mouseleave', function() {
45+
this.classList.remove('scale-down');
46+
});
47+
48+
run();

extras/game/style.css

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
@import url('https://fonts.googleapis.com/css2?family=Readex+Pro:wght@200;300;400;500;600;700&display=swap');
2+
3+
body {
4+
background-color: #FF9F00;
5+
display: flex;
6+
height: 100vh;
7+
width: 100%;
8+
overflow: hidden;
9+
margin:0em;
10+
}
11+
12+
.clicker-layer{
13+
position:absolute;
14+
user-select: none;
15+
display: flex;
16+
justify-content: center;
17+
align-items: center;
18+
height: 100%;
19+
width: 100%;
20+
z-index: 3;
21+
}
22+
.clicker-layer #click{
23+
/*aloow image to go smaller on smaller window*/
24+
height: auto;
25+
width: auto;
26+
max-height: 207px;
27+
max-width: 207px;
28+
cursor: pointer;
29+
height: auto;
30+
width: auto;
31+
transition: all 0.1s ease-in-out;
32+
}
33+
34+
.text-layer{
35+
margin-top: calc(100vh / 6);
36+
position:relative;
37+
user-select: none;
38+
justify-content: center;
39+
align-items: center;
40+
height: 100vh;
41+
width: 100%;
42+
}
43+
.text-layer h1{
44+
45+
font-size: 5em;
46+
color: #fff;
47+
text-align: center;
48+
margin: 0;
49+
padding: 0;
50+
font-family: 'Readex Pro', sans-serif;
51+
font-weight: 400;
52+
}
53+
54+
/* CSS */
55+
.scale-down {
56+
transform: scale(0.8);
57+
}

extras/popup/popup.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1385,3 +1385,15 @@ async function getCommit() {
13851385
)})`;
13861386
} catch (err) {}
13871387
}
1388+
1389+
1390+
var iconsclicks = 0;
1391+
1392+
document.querySelector(".searchbaricon")?.addEventListener("click", function () {
1393+
iconsclicks += 1;
1394+
if (iconsclicks > 9) {
1395+
chrome.tabs.create({
1396+
url: "chrome-extension://" + chrome.runtime.id + "/extras/game/index.html",
1397+
});
1398+
}
1399+
})

features/anti-generic/data.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"url": "https://scratch.mit.edu/users/rgantzos/"
1212
},
1313
{
14-
"username": "mrfurretguy",
14+
"username": "MrrfyW",
1515
"url": "https://scratch.mit.edu/users/MrAK2006/"
1616
}
1717
],

features/features.json

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,16 @@
44
"id": "pin-comments",
55
"versionAdded": "v3.8.0"
66
},
7+
{
8+
"version": 2,
9+
"id": "sidebar",
10+
"versionAdded": "v3.8.0"
11+
},
12+
{
13+
"version": 2,
14+
"id": "project-version-detector",
15+
"versionAdded": "v3.8.0"
16+
},
717
{
818
"version": 2,
919
"id": "download-project",
@@ -1141,18 +1151,6 @@
11411151
"file": "round-profile-pictures",
11421152
"type": ["Website", "Theme"]
11431153
},
1144-
{
1145-
"title": "Sidebar",
1146-
"description": "Adds a sidebar to the Scratch website, rather than just the normal navigation bar at the top of the screen.",
1147-
"credits": ["Scratchfangs", "rgantzos", "callumjt"],
1148-
"urls": [
1149-
"https://scratch.mit.edu/users/scratchfangs/",
1150-
"https://scratch.mit.edu/users/rgantzos/",
1151-
"https://scratch.mit.edu/users/callumjt/"
1152-
],
1153-
"file": "sidebar",
1154-
"type": ["Website", "Theme"]
1155-
},
11561154
{
11571155
"title": "Ocular Links in Forums",
11581156
"description": "Adds a link to any user's Ocular page right below their username on a post.",

0 commit comments

Comments
 (0)