(Redirected from Scratch Extension Protocol)
This article has links to websites or programs outside of Scratch and Wikipedia. Remember to stay safe while using the internet, as we cannot guarantee the safety of other websites. |
- This article is about the feature in the editor. For a list of extension blocks, see Blocks#Extensions.
- This article or section documents the current version of Scratch (version 3.0). For this article in Scratch 2.0, see Extension (2.0).
An extension is a category of blocks that can be added to the Block Palette and extends the scope of the Scratch editor. Extensions make it possible to connect Scratch projects with external hardware (such as LEGO WeDo or micro:bit), sources of information on the web (such as Google Translate and Amazon Text to Speech), or blocks allowing for more advanced functionality. They add a collection of command and reporter blocks that can be used to interact with a particular device or data source. When an extension is enabled, its blocks appear in a location with the same name as the extension.
Adding Extensions
To add an extension, press the purple icon at the bottom-left of the screen under the block categories. This will open the Extensions Library, and one can choose an extension. The extension will then show up in the block categories.
Removing Extensions
If an extension was added, but none of its blocks are used in the project, reloading the project will automatically remove the extension. In Scratch 2.0, it was possible to remove an extension by clicking where its name was in More Blocks, and then clicking "Remove extension blocks".
Available Extensions
11 extensions are available on the Extensions Library in Scratch 3.0. Three extensions had their own block categories (that were not an extension) in Scratch 2.0. Two extensions are web extensions, which connect Scratch to additional functions on the Internet. Six extensions are hardware extensions, which connect Scratch to an external device. There is also one hidden extension for testing purposes.
- Music — playing musical notes
- Pen — drawing with the pen
- Video Sensing — detecting camera movement
- Text to Speech — outputting speech from inputted text
- Translate — translating text with Google Translate
- Makey Makey
- micro:bit
- LEGO MINDSTORMS EV3
- LEGO BOOST
- LEGO Education WeDo 2.0
- Go Direct Force & Acceleration
- CoreEx — A hidden extension
The following extensions are only available on the Raspberry Pi release of Scratch:
Writing Extensions
Some features allow one to write one's own extensions.
JavaScript Extensions
This extension mechanism uses JavaScript to create the extensions. The documentation for creating this kind of extension for Scratch 3.0 can be found here.
Distributing Extensions
This page or section is in question as to whether it is useful or not. You can discuss whether you think it should be deleted or not on its talk page. (March 2024) |
This article or section may not have content matching Scratch Wiki editing standards. Please improve it according to Scratch Wiki:Guidelines and Scratch Wiki:Editing Conventions. (March 2024) |
This article or section documents something not included in the current version of Scratch (3.0). It is only useful from a historical perspective. |
An extension distribution strategy is still being worked out. The Scratch team will probably host a small library of "supported" extensions.[citation needed] Users will be able to browse and select extensions from this library from within the Scratch editor. Supported extensions would be checked for quality and safety by the Scratch Team. There likely are strict criteria for including an extension in the Scratch Team-supported extensions library, such as command set clarity and ease of use, size of the potential audience, widespread availability of any associated hardware, and a long-term commitment to support the extension.[1]
Projects with experimental extensions cannot be shared on the Scratch website and will result in a pop-up message whenever a user tries to share a project with experimental extensions. Extension developers can share their extensions by distributing Scratch 2.0 project files (.sb2).[citation needed] Users can then use the "File > Upload from computer" command to import the project that uses the extension.
ScratchX
This article or section documents something not included in the current version of Scratch (3.0). It is only useful from a historical perspective. |
- Main article: ScratchX
ScratchX was a gallery of experimental extensions that one could try out on the ScratchX website. The website could be found here. There were multiple Scratch extensions on ScratchX. It was discontinued in Scratch 3.0, due to the extensions being supported in the main Scratch editor, but it remained available to use here[dead link] until the discontinuation of Flash.
Scratch Lab
- Main article: Scratch Lab
Scratch Lab is a website made by the Scratch Team to test extensions that could possibly be added to Scratch 3.0. As of November 2023, 3 extensions, Animated Text, Video Sprites, and Face Sensing, are available. Scratch Lab can be found here.
See Also
- Adding Extensions via Developer Tools
- Developing Scratch Extensions (forum)
- Hardware that can Connect to Scratch
- How to Connect to the Physical World
- LEGO Education WeDo Robotics Kit
- Making ScratchX Extensions
- Remote Sensor Protocol in Scratch 1.4
- Scratch 1.4 Modifications
- Scratch Modification
- ScratchX
- Scratch Lab
References