# Scratch

> programming language learning environment

**Wikidata**: [Q275131](https://www.wikidata.org/wiki/Q275131)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Scratch_(programming_language))  
**Source**: https://4ort.xyz/entity/scratch

## Summary
Scratch is a visual programming language and online community developed by the MIT Media Lab to teach coding through block-based, drag-and-drop interfaces. It allows users to create interactive stories, games, and animations while learning computational thinking.

## Key Facts
- Developed by MIT Media Lab, with inception in 2003
- Available in multiple versions: 2.0 (released July 15, 2015) and 3.0 (released January 2, 2019)
- Runs on Windows, macOS, Android, and ChromeOS operating systems
- Licensed under 3-clause BSD License as free software
- Features a mascot called Scratch Cat
- Has over 61 sitelinks across Wikipedia language editions
- Official website: https://scratch.mit.edu
- Influenced by Logo, Etoys, StarLogo, and AgentSheets
- Uses visual programming paradigm with event-driven programming
- Programming languages used include Squeak (version 1.0), ActionScript (version 2.0), and Blockly

## FAQs
### Q: What is Scratch used for?
A: Scratch is used for creating interactive stories, games, and animations through visual programming blocks. It's primarily an educational tool designed to teach coding concepts to beginners, especially children and young learners.

### Q: Is Scratch free to use?
A: Yes, Scratch is free and open-source software licensed under the 3-clause BSD License. The online editor and offline applications are available at no cost.

### Q: What platforms can run Scratch?
A: Scratch runs on Microsoft Windows, macOS, Android, and ChromeOS operating systems. It's accessible through web browsers and as downloadable applications.

## Why It Matters
Scratch revolutionized computer science education by making programming accessible to millions of young learners worldwide. Before Scratch, coding was often seen as intimidating and required learning complex syntax. Scratch's block-based visual programming eliminated this barrier, allowing users to focus on computational thinking and creative problem-solving rather than memorizing commands. The platform has become a global phenomenon in STEM education, with millions of projects created and shared in its online community. It's particularly significant for democratizing access to computer science education, enabling children from diverse backgrounds to learn coding concepts through creative expression. The Scratch Foundation continues to maintain and expand the platform, ensuring it remains a vital tool for digital literacy in an increasingly technology-driven world.

## Notable For
- First major block-based visual programming language for education
- Created by MIT Media Lab, establishing credibility in academic computing
- Built-in online community for sharing and remixing projects
- Multilingual support across dozens of languages
- Successfully transitioned from Flash-based (version 2.0) to HTML5-based (version 3.0) architecture

## Body
### Development and History
Scratch was developed at the MIT Media Lab's Lifelong Kindergarten group, with development beginning in 2003. The platform was created by Mitchel Resnick and his team to provide a more accessible entry point to programming for young learners. The name "Scratch" comes from the scratching technique used by hip-hop DJs, reflecting the platform's emphasis on remixing and building upon others' work.

### Technical Architecture
Scratch has evolved through multiple technical iterations. Version 1.0 was built using Squeak, a Smalltalk-based environment. Version 2.0 transitioned to ActionScript for the online editor, while maintaining desktop applications. Version 3.0 represents a complete rebuild using HTML5 and JavaScript, making it more accessible across modern devices and eliminating dependency on Flash.

### Educational Impact
The platform has become one of the most widely used educational programming languages globally. It's used in schools, libraries, and homes across more than 150 countries. The Scratch online community allows users to share projects, provide feedback, and learn from each other's code, creating a collaborative learning environment that extends beyond individual instruction.

### File Formats and Extensions
Scratch projects use specific file extensions: .sb for version 1.4, .sb2 for version 2.0, and .sb3 for version 3.0. Sprite files use .sprite, .sprite2, and .sprite3 extensions respectively. The platform also supports various media types through its application/x.scratch.sb3 format.

### Community and Ecosystem
The Scratch online community hosts millions of user-created projects, with features for commenting, remixing, and following other creators. The platform includes moderation tools and community guidelines to maintain a safe environment for young users. Third-party tools and extensions have expanded Scratch's capabilities, including connections to hardware like micro:bit and LEGO robotics.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "Scratch",
  "description": "Visual programming language and online community for creating interactive stories, games, and animations",
  "url": "https://scratch.mit.edu",
  "sameAs": [
    "https://www.wikidata.org/wiki/Q603830",
    "https://en.wikipedia.org/wiki/Scratch_(programming_language)"
  ],
  "additionalType": "EducationalTechnology"
}

## References

1. [Source](https://www.scratchfoundation.org)
2. [2025](https://github.com/EvanLi/Github-Ranking/blob/master/Data/github-ranking-2025-07-06.csv)
3. [Scratch 2.0 will be released on May 9. 2013](https://scratch.mit.edu/discuss/post/23274/)
4. [Scratch 3.0 is here!](https://scratch.mit.edu/discuss/topic/326861/)
5. [Source](https://scratch.mit.edu/download)
6. [Release 418. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v418)
7. [Release 419. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v419)
8. [Release 420. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v420)
9. [Release 421. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v421)
10. [Release 422. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v422)
11. [Release 423. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v423)
12. [Release 424. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v424)
13. [Release 425. 2014](https://github.com/scratchfoundation/scratch-flash/releases/tag/v425)
14. Freebase Data Dumps. 2013
15. Integrated Authority File
16. [Source](https://en.scratch-wiki.info/wiki/Scratch_File_Format)
17. [Source](https://fr.scratch-wiki.info/wiki/Extension_de_fichier_.sb)
18. [Source](https://en.scratch-wiki.info/wiki/Scratch_File_Format_(1.4)/Project_File)
19. [Source](https://fr.scratch-wiki.info/wiki/Extension_de_fichier_.sb2)
20. [Source](https://en.scratch-wiki.info/wiki/Scratch_File_Format_(2.0))
21. [Source](https://fr.scratch-wiki.info/wiki/Extension_de_fichier_.sb3)
22. [Source](https://fr.scratch-wiki.info/wiki/Sprite)
23. [Source](https://en.scratch-wiki.info/wiki/Scratch_File_Format_(1.4)/Sprite_File)
24. [Source](https://en.scratch-wiki.info/wiki/Scratch_File_Format_(2.0)#Sprite_Files)
25. [Source](https://en.scratch-wiki.info/wiki/Scratch_File_Format#Sprite_Files)
26. [Source](https://github.com/scratchfoundation/scratch-flash)
27. National Library of Israel
28. [OpenAlex](https://docs.openalex.org/download-snapshot/snapshot-data-format)