Skip to Content

Scratch Source Code Licensed Code

Scratch Source Code > Scratch Source Code Licensed Code

License Information

All source code downloadable from this page is licensed under the Scratch Source Code License.
The Scratch source code license allows you to distribute derivative works based on the Scratch source code for non-commercial uses subject to the following restrictions:

  • you cannot use the word "Scratch" to refer to derivative works (except in the phrase "Based on Scratch from the MIT Media Laboratory")
  • you cannot use the Scratch logo or the official (copyrighted) Scratch cat in derivative works
  • you cannot implement the ability to upload projects to any MIT Scratch website (currently, http://scratch.mit.edu)
  • copies or derivative works must retain the Scratch copyright notice and license
  • you must make the source code for derivative works available.

This is just a summary; the full license is in the file "license.txt" included in the source code download package, and also available here. The purpose of these restrictions is to avoid confusion in the Scratch user community between the official version of Scratch (supported by the Lifelong Kindergarten group) and experimental variations. We are happy the share our source code, but we want to protect the Scratch brand and our user community.

Download

ScratchSource1.4.zip - released under the Scratch Source Code License (4.8 megabytes)

This source code release is based on the source code of the official release of Scratch 1.4 with a few changes: the Scratch logo was replaced the default sprite is a generic cat, not the official (copyrighted) Scratch cat the project sharing code was removed. The download consists of a Squeak image and changes file. To view the source code, just drop the .image file onto a Squeak virtual machine (e.g. Scratch.exe or Scratch.app, which come bundled with Scratch). If you are new to Squeak, see the "Scratch and Squeak" section on the main source code page.

ScratchPlugin is a Squeak plugin (a shared library that extends the Squeak VM) written in C that supports image filters, presentation mode, the help button, and several other features. Scratch will not crash without ScratchPlugin, but these features will not work. UnicodePlugin is a Squeak plugin that support Unicode text rendering. The ScratchPlugin and UnicodePlugin source code (for Windows, Mac OS X, and Linux) is here: ScratchPluginSrc1.4.zip The Linux code has not yet been fully tested by the Scratch team. It's mostly complete, but it may need a few minor adjustments.

Scratch UI "Skin" The Scratch User Interface uses a number of graphical elements. These are stored in a Dictionary in the ScratchSkin class variable of ScratchFrameMorph. The readSkinFrom: class method can be used to read in the graphical elements from a folder. Here's the skin folder: ScratchSkin1.4.zip

Older Versions of Scratch

(Released under the Scratch Source Code License)

Scratch 1.3 Source:
ScratchSource1.3.1.zip (3.6 megabytes)
ScratchPluginSrc1.3.1.zip
ScratchSkin1.3.1.zip

Scratch 1.2 Source:
ScratchSource1.2.1.zip (3.1 megabytes)
ScratchPluginSrc1.2.1.zip