Skip to content

Conversation

@sebastianmas-cyber
Copy link

I coded my own extension, can you please review it and add it to the Turbowarp Extension gallery?

@github-actions github-actions bot added the pr: other Pull requests that neither add new extensions or change existing ones label Jan 16, 2026
@Brackets-Coder
Copy link
Contributor

!format

@github-actions
Copy link

The formatting bot didn't find any formatting issues. It currently only checks the extensions folder. The author or a maintainer can run terminal command 'npm run format' manually to format all files.

@Brackets-Coder
Copy link
Contributor

Brackets-Coder commented Jan 16, 2026

I'm just going to let you know straight up—the review process will likely take weeks or months. This is a volunteer maintained repository we're not always reviewing things. You can see our backlog of 97 pull requests....

Either way, I'll try to help you as best I can, and a smaller extension like this usually goes faster. Just requesting patience

@sebastianmas-cyber
Copy link
Author

I'm just going to let you know straight up—the review process will likely take weeks or months. This is a volunteer maintained repository we're not always reviewing things. You can see our backlog of 97 pull requests....

Either way, I'll try to help you as best I can, and a smaller extension like this usually goes faster. Just requesting patience

Ok, thank you for maintaining Turbowarp, it is amazing!

@Brackets-Coder
Copy link
Contributor

Brackets-Coder commented Jan 16, 2026

You'll want to make a few changes.

Read the contributing guidelines. Although an extension like this likely wouldn't break any rules, you do need to add the header metadata comments:

// Name: My Cool Extension
// ID: extensionid
// Description: Does a very cool thing. This must have punctuation at the end!
// By: GarboMuffin <https://scratch.mit.edu/users/GarboMuffin/>
// Original: TestMuffin // this one usually isn't needed unless you based your extension on another
// License: MPL-2.0

Also, you need to organize the file structure properly. Create a new folder with a username of choice in /extensions/, then add that path to extensions.json without the .js file extension

example:
"Username/qrCode"

After that, you need to wrap block text in Scratch.translate(), and potentially change the CDN loading to use Scratch.external

Some of this may seem overwhelming, so I'll do my best to guide you step-by step. There's a few things I can do for you as well but not everything

@Brackets-Coder Brackets-Coder self-assigned this Jan 16, 2026
@Brackets-Coder
Copy link
Contributor

If you'd like, I can make a pull request on your fork's branch to make these changes

Copy link
Contributor

@Brackets-Coder Brackets-Coder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't gotten to the block code yet, but something like this should help:

@@ -0,0 +1,112 @@
(function(Scratch) {
Copy link
Contributor

@Brackets-Coder Brackets-Coder Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
(function(Scratch) {
// Name: QR Scanner
// ID: sweetsebiQR
// Description: Example description. Enables the scanning of QR codes.
// By: Sweetsebi <https://scratch.mit.edu/users/Sweetsebi>
// License: MPL-2.0
(function(Scratch) {

Comment on lines +5 to +7
const script = document.createElement('script');
script.src = 'https://cdn.jsdelivr.net/npm/[email protected]/dist/jsQR.min.js';
document.head.appendChild(script);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something like this might work:

Suggested change
const script = document.createElement('script');
script.src = 'https://cdn.jsdelivr.net/npm/[email protected]/dist/jsQR.min.js';
document.head.appendChild(script);
Scratch.external.importModule("https://cdn.jsdelivr.net/npm/[email protected]/dist/jsQR.min.js")

@Brackets-Coder Brackets-Coder added pr: new extension Pull requests that add a new extension and removed pr: other Pull requests that neither add new extensions or change existing ones labels Jan 16, 2026
@Brackets-Coder
Copy link
Contributor

Hello @sebastianmas-cyber, just wanted to check in and see if there was anything else I can do for you!

@ScratchFakemon
Copy link
Contributor

!format

@ScratchFakemon
Copy link
Contributor

!format

I doubt I have permissions for that but it's worth a shot

@Brackets-Coder
Copy link
Contributor

!format

@github-actions
Copy link

The formatting bot didn't find any formatting issues. It currently only checks the extensions folder. The author or a maintainer can run terminal command 'npm run format' manually to format all files.

@ScratchFakemon
Copy link
Contributor

The formatting bot didn't find any formatting issues. It currently only checks the extensions folder. The author or a maintainer can run terminal command 'npm run format' manually to format all files.

@Brackets-Coder the extension JS file is in the root of the branch and not the extensions folder

@Brackets-Coder
Copy link
Contributor

@Brackets-Coder the extension JS file is in the root of the branch and not the extensions folder

Yeah, that's one of the things I mentioned that need to be fixed for this PR but I wasn't thinking when I ran format

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: new extension Pull requests that add a new extension

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants