Visual coding for everyone.
Scratch is a visual programming language from MIT designed to make coding fun and accessible. Instead of typing text, you drag and drop coloured blocks — making it perfect for beginners, especially young learners ages 8–16.
This course is structured around the official Raspberry Pi Foundation Scratch curriculum. You'll progress through 3 levels (beginner → intermediate) and 3 modules (classic projects), building 35 real projects along the way.
- Sprites, backdrops and the Scratch editor interface
- Motion, Looks, Sound and Events blocks
- Loops, conditionals and variables
- Broadcasting messages between sprites
- Pen drawing, cloning and sensing
- Building real games, stories and interactive projects
Space Talk · Catch the Bus · Find the Bug · Silly Eyes · Surprise Animation · I Made You a Book
Broadcasting Spells · Grow a Dragonfly · Drum Star · Next Customer Please · Don't Fall In · This Sprite Needs You
Nature Rover · Puzzle Room · Mandala · Swarms, Schools & Flocks · Music Maker · Welcome To My World
Rock Band · Lost in Space · Ghostbusters · Chatbot · Paint Box · Boat Race
Memory · Dodgeball · Catch the Dots · Clone Wars · Create Your Own World
Cats · Flower Generator · Guess the Flag · Lineup · Flappy Parrot · Binary Hero
35 Projects · 6 Levels
Create a space scene where characters emote and share thoughts using Looks and Sound blocks. 02Catch the Bus
Animate sprites that run to catch a bus using Events and Motion blocks. 03Find the Bug
Build a timed game where players find a hidden bug sprite across levels. 04Silly Eyes
Create a character whose eyes follow the mouse pointer using Sensing blocks. 05Surprise Animation
Develop a delightful animation combining movement, looks and sounds. 06I Made You a Book
Design a digital book with pages that readers can turn through.
Use broadcast/receive blocks to send messages between sprites and trigger magical effects. 08Grow a Dragonfly
Program a dragonfly to grow in size based on user actions using variables and effects. 09Drum Star
Build a digital drum set where clicking or pressing keys triggers drum sounds. 10Next Customer Please
Simulate a queue system using variables, broadcasting and interactivity. 11Don't Fall In
Create a game where sprites avoid falling into unsafe zones using conditionals. 12This Sprite Needs You
Make a companion sprite that responds to events and messages to assist the user.
Program a rover to explore terrain and interact with environmental elements. 14Puzzle Room
Build a room where players solve logic puzzles to unlock content and advance. 15Mandala
Create symmetrical mandala art using loops, cloning and mathematical patterns. 16Swarms, Schools & Flocks
Simulate flocking behavior with sprites following simple rules to form swarms. 17Music Maker
Build a project to compose music by triggering sound loops and user input. 18Welcome To My World
Design an immersive world that users can explore with sprites and broadcasts.
Create a musical ensemble using sprites as instruments triggered by clicks or keys. 20Lost in Space
Animate a space scenario with a controllable spaceship across multiple backdrops. 21Ghostbusters
Build a ghost-hunting game with collision detection, conditionals and sprite effects. 22Chatbot
Program a conversational sprite that responds to user inputs using variables and logic. 23Paint Box
Create a drawing interface using pen blocks and coordinate systems. 24Boat Race
Design a racing game with countdown, user controls and motion across the screen.
Build a memory matching game using variables to track matches and attempts. 26Dodgeball
Make an action game where the player dodges moving objects using collision detection. 27Catch the Dots
Develop a game to catch randomly appearing dots with scoring and user input. 28Clone Wars
Use Scratch cloning to create and manage many sprite instances that interact. 29Create Your Own World
Build an imaginative world with sprites, backgrounds and interactive elements.
Create an interactive cat animation with sprite movement, looks and backdrop changes. 31Flower Generator
Build a system to generate flower patterns using loops and symmetry. 32Guess the Flag
Create a flag quiz where users guess countries using variables and conditionals. 33Lineup
Arrange sprites in formation reacting to user input using positioning and loops. 34Flappy Parrot
Make a side-scrolling game controlling a parrot to avoid obstacles. 35Binary Hero
Build an interactive app using binary concepts and transformations in gameplay.
Learn at your own pace.
Open Scratch
Go to scratch.mit.edu in your browser. No download needed — runs in any browser.
Start Level 1
Click the first project card. Read the lesson, then open the Raspberry Pi project link to see the instructions.
Remix & Build
Remix the starter project. Follow the step-by-step guide to build the complete project from scratch.
Progress Through Levels
Complete all 6 levels. Each level introduces new Scratch blocks and more complex project logic.