<h1>Play with Experimental Extensions to Scratch!</h1>
<p>With Experimental Extensions, you can create Scratch projects that connect with external hardware (such as electronic devices and robotics) and online resources (including web data and web services).</p>
<asideclass="warning message"><strong>Warning:</strong> all extensions are experimental and not a product of the Scratch Team. <ahref="#faq">Find out more</a></aside>
<sectionclass="scratch-vs-scratchx">
<div><div>
<div>
<div>
<h2class="logo-scratch">Scratch</h2>
<p>With the Scratch programming language, you can create your own interactive stories, games, and animations &emdash; and share your creations with others in an online community. <ahref="http://scratch.mit.edu/">Take me to Scratch</a></p>
<p>On the ScratchX website, you can play with Experimental Extensions to Scratch. Because these extensions are experimental and not enforsed or supported by the Scratch Team, they are available only on the ScratchX site, not the main Scratch site. <ahref="#extensions">Try out ScratchX</a></p>
<p><strong>Anyone</strong> can access and play with Experimental Extensions on ScratchX. Integrate <ahref="?url=https://technoboy10.github.io/twitter/extension.js"data-action="load-url">Twitter</a> feeds into your Scratch project, connect with hardware like <ahref="?url=http://khanning.github.io/scratch-arduino-extension/arduino_extension.js"data-action="load-url">Arduino</a> and <ahref="?url=https://MrYsLab.github.io/xi4s.js"data-action="load-url">Raspberry Pi</a>, and <ahref="#extensions">much much more.</a></p>
<p><strong>Developers</strong> can use ScratchX to create and test new Experimental Extensions. Learn more about ScratchX in our <ahref="https://github.com/LLK/scratchx/wiki/">developer documentation</a></p>
<p>With Experimental Extensions, you can create Scratch projects that connect with external hardware and online resources. Try examples below to see the wide variety of things you can do with Experimental Extensions!</p>
<p>If you are a developer with an extension that you'd like to submit to our gallery, read more about the <ahref="https://github.com/LLK/scratchx/wiki#how-do-i-submit-my-extension-for-consideration-on-scratchx">submission process here</a>.</p>
<asideclass="warning message"><strong>Warning:</strong> all extensions are experimental and not a product of the Scratch Team. <ahref="#faq">Find out more</a></aside>
<asideclass="warning message"><strong>Warning:</strong> These extensions are experimental. <ahref="#faq">Please read the FAQ before trying them.</a></aside>
<pid="privacy-introduction">ScratchX is a platform that enables people to test experimental functionality built by developers for the visual programming language <ahref="http://scratch.mit.edu">Scratch</a>. The purpose of this website is to provide a playground for people to test experimental content. We wrote this privacy policy to explain what information we access and how we use it. If you have any questions regarding this policy, you can <ahref="mailto:scratch-extensions@scratch.mit.edu">contact us</a>.</p>
<p><strong>GitHub Pages:</strong> Developers who link their content to ScratchX are required to host their experimental content on an external service called <ahref="https://pages.github.com/">GitHub pages</a>, which is governed by GitHub's own <ahref="https://help.github.com/articles/github-terms-of-service/">Terms of Service</a> and <ahref="https://help.github.com/articles/github-privacy-policy/">Privacy Policy</a>. The ScratchX site itself is also hosted on GitHub pages, and is governed by their terms and policy (in addition to the ScratchX terms and policy).</p>
<p><strong>Google Analytics:</strong> Using an external service called Google Analytics, we collect some data about where you click and which parts of the site you visit. This "click data" helps us figure out ways to improve the website. Information collected and processed by Google Analytics includes the user's IP address, network location, and geographic location. Google Analytics acquires all of its information directly from the user, by installing a cookie (see below) on your computer, if you have enabled JavaScript. We do not share any information (other than aggregate statistics) that we collect with Google, and Google does not collect any personal identifying information about you. You can read Google Analytics' privacy policy <ahref="https://support.google.com/analytics/answer/6004245?hl=en">here</a>.</p>
<p><strong>Cookies:</strong> Google Analytics (above) uses cookies in order to gather information about your use of the ScratchX website. A cookie is a small text file that Google Analytics can send to your browser for storage on your computer.</p>
<li>Via Google Analytics, we gather browsing data so that we know how people use the website.</li>
<li>Other than as described above, we will never share personally identifiable information about you with any other person, company, or organization, except as required to comply with our obligations under the law.</li>
<p>We review our Privacy Policy on a periodic basis, and we may modify our policies as appropriate. We may also change or update our Privacy Policy if we add new services or features. If we make any changes to our privacy practices, we will amend this Privacy Policy accordingly and post the amended policy on the ScratchX website. We encourage you to review our Privacy Policy on a regular basis.</p>
<asideclass="warning message"><strong>Warning:</strong> These extensions are experimental. <ahref="#faq">Please read the FAQ before trying them.</a></aside>
<h2id="faq-what-is-scratchx">What is ScratchX?</h2>
<p>ScratchX is a platform that enables people to test experimental functionality built by developers for the visual programming language Scratch.</p>
<h2id="faq-scratch-vs-scratchx">What's the difference between Scratch and ScratchX?</h2>
<p><ahref="https://scratch.mit.edu/">Scratch</a> is a programming language and online community where you can create your own interactive stories, games, and animations. ScratchX is a separate experimental platform built to test experimental Scratch features, also known as Experimental Extensions. There is no login or community component to ScratchX, and projects created within ScratchX can only be run on ScratchX.</p>
<h2id="faq-scratch-extensions">What are Scratch Extensions?</h2>
<p>Scratch extensions make it possible for Scratch to interface with external hardware and information outside of the Scratch website through new blocks. Extensions are written in JavaScript for the ScratchX project editor.</p>
<p>Experimental Extensions are extensions created for Scratch by the community; they are not managed or endorsed by Scratch in any way. Experimental Extensions can run only in the ScratchX environment. Official Extensions can be found and run from within Scratch 2.0 (both <ahref="https://scratch.mit.edu">online</a> and <ahref="https://scratch.mit.edu/scratch2download/">offline</a> editors), accessible in the 'More Blocks' section of the blocks menu.</p>
<p>The Scratch Team has created ScratchX to enable people to create and test Experimental Extensions. However, the Scratch Team does not endorse, support or maintain specific Experimental Extensions. People using Experimental Extensions should be careful not to provide any personal details such as login passwords or personally-identifiable information if prompted by an Experimental Extension.</p>
<h2id="faq-how-to-use-scratchx">How do I use ScratchX?</h2>
<p>There are three pathways into ScratchX. If you have been given or sent a .sbx file, you can load that into ScratchX via the homepage (look for 'Open an Extension Project'). If you have been sent a ScratchX URL (starts with 'scratchx.org/'), you can click your link and the extension will load automatically, or you can enter that URL into the box on the homepage (look for 'Open an Extension URL'). Lastly, if you don't have an example extension, you can try out one on the site by clicking on a Featured Experimental Extension on the homepage (look for 'Featured Extensions').</p>
<h2id="faq-how-to-share">I made a cool project on ScratchX. How do I share it?</h2>
<p>Click the 'Save' button at the top of the page to download your project as an .sbx file on to your local computer. You can then send this file to other people, and they can upload your file onto ScratchX to play with your project.</p>
<h2id="faq-examples">Where can I find example Experimental Extensions to play around with?</h2>
<p>We have linked to a few example extensions on the <ahref="#home">ScratchX</a> homepage. We plan to highlight additional extensions in the coming months.</p>
<h2id="faq-scratchx-url">What is a ScratchX URL?</h2>
<p>Developers who make extensions for ScratchX can choose to create a custom web address or URL that points to their extension and/or demo project. Clicking on a ScratchX extension URL will take you directly to a project with an extension loaded.</p>
<h2id="faq-sbx-file">What is an .sbx file?</h2>
<p>The SBX (.sbx) ScratchX file format is the file format used to encode ScratchX projects when they are downloaded to a user's computer. SBX files can only be used on the ScratchX site. Other Scratch environments use different formats, including the .sb2 format for Scratch 2.0 (read more here) and .sb format for Scratch 1.4 (read more here).</p>
<h2id="faq-open-sbx">Why can't I open .sbx files in Scratch 2.0 or the offline editor?</h2>
<p>Experimental Extensions are extensions created for Scratch by the community and are not managed or endorsed by Scratch in any way. Because of this, we do not allow Experimental Extensions to run on the larger Scratch site.</p>
</section>
<nav>
<h3>Contents</h3>
<ol>
<li><ahref="#faq-what-is-scratchx">What is ScratchX?</a></li>
<li><ahref="#faq-scratch-vs-scratchx">What's the difference between Scratch and ScratchX?</a></li>
<li><ahref="#faq-scratch-extensions">What are Scratch Extensions?</a></li>
<p><strong>Warning:</strong> The extensions on this site are experimental</p>
<p>The Scratch Team is <strong>not</strong> responsible for the extensions and projects on this site. Please use caution when using these extensions. <ahref="#faq">Learn More.</a></p>