kids encyclopedia robot

Scratch (programming language) facts for kids

Kids Encyclopedia Facts
Quick facts for kids
Scratch
Scratch logo
Logo used since 16 October 2015
Scratch editor screenshot.png
Scratch 3.0 editor
Paradigm Event-driven, block-based programming language
Developer Scratch Foundation
First appeared
  • 11 October 2003; 22 years ago (2003-10-11) (prototype Scratch 0.1)
  • 15 May 2007; 18 years ago (2007-05-15) (Scratch 1.0)
  • 9 May 2013; 12 years ago (2013-05-09) (Scratch 2.0)
  • 2 January 2019; 7 years ago (2019-01-02) (Scratch 3.0)
Stable release
  • Scratch 3.0 (online editor) / 2 January 2019; 7 years ago (2019-01-02)
  • Scratch 3.29.1 (offline editor) / 27 February 2022; 4 years ago (2022-02-27)
Implementation language Squeak (Scratch 1.x)
ActionScript (Scratch 2.0)
HTML5, JavaScript (Scratch 3.0)
OS Microsoft Windows, macOS, Linux (via renderer), HTML5 (via web browser), iOS, iPadOS, and Android.
License

GNU Affero General Public License (Scratch 3.0)

  • BSD 3-Clause (earlier versions of 3.0),
  • GPLv2 and Scratch Source Code License (1.x)
Filename extensions .sb, .sprite (Scratch 1.x)
.sb2, .sprite2 (Scratch 2.0)
.sb3, .sprite3 (Scratch 3.0)
Influenced by
Logo, Smalltalk, HyperCard, StarLogo, AgentSheets, AgentCubes, Etoys, Snap!
Influenced
Catrobat, ScratchJr, Snap!, mBlock, Turtlestitch

Scratch is a fun and easy-to-use visual programming language. It helps kids aged 5 to 16 learn how to code by dragging and dropping colorful blocks. With Scratch, you can create your own video games, animations, interactive stories, and even music!

Scratch was created by the MIT Media Lab and is used all over the world. It's available in over 70 languages. Many schools, clubs, and homes use Scratch to teach coding. As of February 15, 2023, over 103 million users have shared more than 123 million projects. The website gets over 95 million visits every month. In total, more than 1.15 billion projects have been created, with the one billionth project made on April 12, 2024.

The name "Scratch" comes from a technique disk jockeys use. They "scratch" vinyl records to mix different sounds and create new music. Just like that, Scratch lets you mix different parts like graphics, sounds, and code. You can create new projects or "remix" projects made by others.

Exploring Scratch 3.0

Scratch 3.0 is the latest version of this exciting programming tool. It makes creating projects even easier and more fun.

How the Scratch Editor Works

Dialogo scratch Best Friends 1
A program to change the background and make a sprite speak

The Scratch editor has three main parts. These are the stage area, the block palette, and the coding area. You drag blocks from the palette to the coding area to build your programs. You can start your code by clicking the green flag or directly on the code blocks. You can even make your own special code blocks!

The stage area is where you see your project come to life. This is where your animations and games play out. All your characters, called sprites, are listed at the bottom of the stage. The stage uses x and y coordinates, with the center being 0,0.

When you select a sprite, you can drag code blocks to it. The Costumes tab lets you change how your sprite looks. You can draw new costumes or edit existing ones. The Sounds tab lets you add music and sound effects to your sprite. You can draw your own sprites, choose from a library, or upload images.

Understanding Code Blocks

Scratch uses different categories of code blocks, each with a special color and purpose.

Block categories in Scratch
Category What it does
Motion Makes sprites move, turn, and change position.
Looks Controls how sprites appear, like changing costumes or saying things.
Sound Plays sounds and music.
Events Starts your code when something happens, like clicking the green flag.
Control Helps your code make decisions, repeat actions, or create copies of sprites.
Sensing Lets sprites interact with each other, the mouse, or the background.
Operators Performs math calculations, compares values, and combines text.
Variables Stores information, like a score in a game.
Lists Stores many pieces of information in an organized way.
My Blocks Lets you create your own custom code blocks for repeated actions.
Extensions Adds extra sets of blocks for special features, like music or drawing.

Coding Without Internet

Scratch Beginner Scripts
Four different scripts for the getting started built-in tutorial

You can use Scratch even without an internet connection! The "Desktop Editor" for Scratch 3.0 is available for many devices. These include Microsoft Windows 10, Apple's macOS, ChromeOS, and Android. This offline editor lets you create and play Scratch projects anywhere. Older versions of the offline editor are also available.

Adding More Features with Extensions

Scratch 3 Extensions Page
An example of the Scratch 3 Extensions Page

Extensions add special blocks and features to your Scratch projects. Some extensions let you connect to physical devices, while others add new digital abilities.

Physical Device Extensions

These extensions let your Scratch projects interact with real-world gadgets:

  • LEGO Mindstorms EV3 – Control robots and get information from sensors.
  • Makey Makey – Use everyday objects to control your projects.
  • LEGO Education WeDo 2.0 – Control motors and sensors from Lego WeDo kits.
  • micro:bit – Use a micro:bit mini-computer to control your projects.
  • LEGO BOOST – Bring your robotic creations to life.
  • Go Direct Force & Acceleration – Measure pushes, pulls, and movement.

Digital Feature Extensions

Many digital extensions add cool new abilities to your projects:

  • Music – Play different digital instruments like drums, trumpets, and pianos.
  • Pen – Draw lines and shapes on the stage with various colors and thicknesses.
  • Video Sensing – Detects movement using your computer's camera.
  • Text to Speech – Makes your sprites "speak" words you type, with different voices and languages.
  • Translate – Uses Google Translate to change text from one language to another.

Trying New Ideas in Scratch Lab

The Scratch Lab is a special place where the Scratch Team tests new ideas. These experiments might become part of the main Scratch website in the future. Some ideas being explored include:

  • Video Sprites – Fill sprites with live video from your camera.
  • Animated Text – Make words come alive with colors, fonts, and animations.

The Scratch Community

The MADE Scratch Workshop
A Scratch programming workshop

Scratch is used in many places like schools, museums, libraries, community centers, and homes. While designed for ages 8–16, people of all ages enjoy using it. In April 2020, Scratch was even ranked among the top 20 programming languages in the world!

Learning with Scratch

Scratch is a great first language for learning to code. It's easy to create interesting programs, and the skills you learn can help you with other languages like Python.

Scratch isn't just for games. You can create animations, stories, music, and art. Teachers use Scratch to make lessons more visual and interactive. It helps students understand math, history, and science concepts. Using Scratch helps young people learn how to think logically, be creative, and work with others.

The Online Community of Scratchers

Jumper platformer
An example of a game created with Scratch 2.0

People who use Scratch are called "Scratchers." Scratchers can share their projects on the Scratch website. Anyone in the community can view, download, and even "remix" the code to make new projects. Scratchers can also create studios, comment on projects, mark favorites, and follow other members. Projects range from fun games to useful tools. The website often hosts "Scratch Design Studio" challenges to inspire new creations.

Educators also have their own online community called ScratchEd. Here, teachers share ideas and resources for using Scratch in the classroom.

Scratch Studios: Sharing Your Creations

Scratchers can upload their projects to "studios." These are like online galleries where other Scratchers can see, comment on, and remix projects. Studios often collect projects around a certain theme. If you create or manage a studio, you can invite other users to help curate it.

Shadow on Scratch
An example of a game created with Scratch 3.0

The Scratch Wiki

The Scratch Wiki is a helpful resource for everything about Scratch. It has information about the website, its history, and how to use it. While supported by the Scratch Team, it's mostly written by Scratch users themselves.

Different Roles in the Community

When you join Scratch, you start as a "New Scratcher." This role has a few limits to prevent problems. For example, you might have a short wait time between comments. After you've been active and created some projects, you can become a regular "Scratcher."

Official moderators and developers are part of the "Scratch Team." They usually have an asterisk next to their username. There are also special accounts for Students and Educators to use Scratch in classrooms.

Access to Scratch in China

In August 2020, access to the Scratch website was blocked in China. This happened because of how certain regions were listed on the website. At the time, it was estimated that over three million people in China were using Scratch.

Fun Events and Celebrations

Scratch Hat Blocks April Fools Version
An example of the six cat blocks in Scratch, shown in their cat forms as they would each year on April Fools

Scratch Educators often meet in person at "Scratch Educator Meetups." They share ideas and learn from each other about teaching with Scratch.

Every May, there's an annual "Scratch Week" (formerly "Scratch Day"). During this week, people around the world host events to celebrate Scratch. These events can be big or small, and you can find a list of them on the Scratch Day website.

The Scratch Team also loves to play pranks on April Fools' Day! They often add fun "Easter eggs" to the website, like turning all event blocks into cat versions.

The Story of Scratch

In the early 2000s, a group at the MIT Media Lab called the Lifelong Kindergarten group (LLK) wanted to create visual programming tools for children. In 2003, they received a grant to develop a new way for kids to express themselves with code. The LLK team, led by Mitchel Resnick, worked with youth centers to create Scratch. It started as a simple programming language without many labels.

The main idea behind Scratch is to "Imagine, Program, Share." It encourages users to share, reuse, and combine code. You can make your own projects or "remix" someone else's. Projects created with Scratch are shared under a special license that gives credit to the original creator.

Scratch 2.0 was released on May 9, 2013. This update changed the website's look and included both an online and an offline editor. It also added new features like custom blocks.

Scratch Homepage March 2026
The Scratch website's homepage

The Scratch Team first announced Scratch 3.0 in 2016. After several test versions, the official Scratch 3.0 was released on January 2, 2019. On June 28, 2023, the Scratch website got a new look with purple headers and optional high-contrast block colors. This made the site easier for people with colorblindness to use.

In 2013, the Scratch Foundation was created. On March 11, 2019, the Scratch Team officially moved from the MIT Media Lab to the Scratch Foundation. They still work closely together. In 2025, Scratch introduced Scratch Memberships as a way for users to support the platform with donations, offering special perks.

The Scratch Foundation

The Scratch Foundation is a company founded in 2013. It now owns and manages Scratch and ScratchJr. The MIT Media Lab transferred these projects to the Foundation in 2019. You can find their website here.

Scratch Project Files

Scratch projects are saved as special files. For Scratch 3.0, these files usually end with the extension `.sb3`. These files contain all the code, sounds, and images that make up your project.

Older Versions of Scratch

While Scratch 3.0 is the current version, you can still find offline editors for older versions like Scratch 2.0 and Scratch 1.4. These let you create and run projects on your computer. If you upload a Scratch 2.0 project to the main website, it automatically converts to Scratch 3.0.

How Older Versions Looked

Scratch Hello World
A script that lets the sprite say Hello, World! then stops the script in Scratch 2.0

In Scratch 2.0, the stage was on the left, the code blocks were in the middle, and the coding area was on the right. Scratch 2.0 also introduced a "backpack" feature. This allowed you to easily move scripts, sprites, costumes, and sounds between different projects.

Other Cool Projects Inspired by Scratch

Snap! (Build Your Own Blocks)

Snap! is a more advanced visual programming language. It was inspired by Scratch and lets users create even more complex programs. It's used in some university courses to teach computer science.

ScratchJr

In July 2014, ScratchJr was released for iPad, and in 2016 for Android. It's like a simpler version of Scratch, made for younger children aged 5 to 7. It helps them learn basic coding concepts.

Community-Made Improvements

Because Scratch is open source, many users have created their own tools to improve it. Browser extensions like ScratchTools and Scratch Addons add new features to the Scratch website and editor.

TurboWarp is another cool project. It's a special version of the Scratch 3.0 editor that makes projects run much faster. It can also save your projects as standalone files that work on their own.

See also

Kids robot.svg In Spanish: Scratch (lenguaje de programación) para niños

kids search engine
Scratch (programming language) Facts for Kids. Kiddle Encyclopedia.