Scratch
Course Outline
🗓️ Duration: TBD
Target Audience: Ages 5–9
Format: Weekly lessons (1–2 hrs each), hands-on projects, and guided videos
Tools: Scratch (scratch.mit.edu), optional (scratch extensions)
🟢 Module 1: Introduction to Scratch
Topic 1.1: Getting Started with Scratch
Objectives: Understand the Scratch interface, create a Scratch account, explore basic motion blocks. Instructor Video: "Tour of Scratch Interface & First Project"
Student Task: Make a sprite move across the screen using the “move” and “turn” blocks. Topic 1.2: Events and Simple Animations
Objectives: Use “when green flag clicked” and “when key pressed” blocks; build animations. Instructor Video: "Making Your Sprite Dance" Student Task: Create a short animation of a sprite walking across the screen. 🟡 Module 2: Building Logic and Interactivity
Topic 2.1: Using Loops and Sounds
Objectives: Understand loops, repetition, and sound integration. Instructor Video: "Loops and Sounds in Scratch" Student Task: Make a sprite repeat a dance move 10 times with background music. Topic 2.2: Introduction to Conditional Logic
Objectives: Understand if-statements and basic sensing. Instructor Video: "Making Interactive Characters" Student Task: Create a game where a sprite reacts to touching another sprite or color. 🟠 Module 3: Game Design Basics
Topic 3.1: Variables and Scores
Objectives: Learn to create and update variables (e.g., score). Instructor Video: "Adding Scores and Lives to Your Game" Student Task: Make a game where players earn points by catching falling objects. Topic 3.2: Broadcast and Game Flow
Objectives: Learn about broadcasts to control scenes and events. Instructor Video: "Creating Multiple Game Levels" Student Task: Make a 2-level game using broadcasts. 🔵 Module 4: Advanced Concepts & Animation
Topic 4.1: Cloning and Multiple Sprites
Objectives: Create multiple copies of sprites and manage their behavior. Instructor Video: "Using Clones to Make a Space Invaders Game" Student Task: Make a game where multiple enemies appear using clones. Topic 4.2: Custom Blocks and Optimization
Objectives: Learn how to make custom blocks to organize code. Instructor Video: "Advanced Scratch: Create Your Own Block" Student Task: Refactor an existing project using custom blocks. 🟣 Module 5: Storytelling and Creativity
Topic 5.1: Building an Interactive Story
Objectives: Use sequences, dialogues, and sound to narrate a story. Instructor Video: "How to Build a Story Game in Scratch" Student Task: Create a 2-minute interactive story with at least two endings. Topic 5.2: Polish and Presentation
Objectives: Add instructions, credits, and refine visuals/sounds. Instructor Video: "Polishing Your Scratch Project Like a Pro" Student Task: Add menus, credits, and instructions to a previous project. 🎓 Capstone Project Ideas
Students will design and complete one of the following:
Adventure Game – Multi-level game with score, enemies, and story arc. Education App – An interactive quiz that teaches math, science, or reading. Scratch Animation Movie – A 3-minute animated story with characters, narration, and sound. Virtual Pet – A pet simulation game where users care for and play with a digital pet. Capstone Submission Includes:
Screenshot or demo recording
Course Outline (Senior)
🗓️ Duration: TBD
Target Audience: Ages 8–16
Format: Weekly lessons (1–2 hrs each), hands-on projects, and guided videos
Tools: Scratch (scratch.mit.edu), optional hardware (mBot2, Arduino, LEGO, micro:bit etc.)
🔰 Module 1: Scratch Basics – Getting Started
Objectives:
Understand Scratch interface Learn to create sprites, backgrounds, and simple scripts Instructor Video:
"Introduction to Scratch and Your First Program" (5 mins)
Topic Tasks:
Create a sprite and make it move Design a background and switch scenes Capstone Idea:
"My First Animated Story" – Make a 3-scene cartoon with sound and speech bubbles.
Evaluation:
Correct use of sprites and scenes Completion of a working short story 🚀 Module 2: Movement & Animation
Objectives:
Control sprite movements (x, y coordinates) Add basic animation using costume changes Understand loops and timing Instructor Video:
"Make Your Sprite Dance!" (7 mins)
Topic Tasks:
Create a sprite dance or walk Add looping background music Capstone Idea:
"Dance Party Animation" – Multiple characters performing synchronized dance.
Evaluation:
Use of loops and costume switching Proper event triggering (e.g., “when green flag clicked”) 🎮 Module 3: Interactive Games I – Events & Logic
Objectives:
Understand broadcast messages Implement conditionals (if-then, touching color) Use variables to track score and time Instructor Video:
"Build Your First Game: Collect the Stars!" (10 mins)
Topic Tasks:
Add start and game-over conditions Capstone Idea:
"Fruit Catcher" – Catch falling fruits to score points.
Evaluation:
Score increases correctly Game starts/restarts correctly 🎮 Module 4: Interactive Games II – Levels & Complexity
Objectives:
Create multiple levels using logic Add win/lose feedback with sounds and animation Instructor Video:
"From Simple to Smart: Advanced Game Logic" (10 mins)
Topic Tasks:
Add multiple scenes/levels Use variables to track level number Capstone Idea:
"Treasure Hunter" – Navigate mazes and unlock levels.
Evaluation:
Consistent level transitions Working game-over and win states 🎥 Module 5: Animation Studio
Objectives:
Storyboarding and planning animations Advanced use of timelines and backdrops Voice recording and sound effects Instructor Video:
"Create Your Own Animated Short Film" (8 mins)
Topic Tasks:
Record voices and sync with character Use custom backdrops and sound effects Capstone Idea:
“Animated PSA” – Public service message on climate change or kindness.
Evaluation:
Story structure and message clarity Use of original audio and backgrounds 🧠 Module 6: AI & Smart Programs (Scratch Extensions)
Objectives:
Use Scratch extensions (translate, text-to-speech, AI services) Integrate data from sensors or speech Instructor Video:
“Making Scratch Smarter with Extensions” (9 mins)
Topic Tasks:
Create a language translation app Add voice instructions to a game Capstone Idea:
“AI Tour Guide” – A sprite that answers questions in different languages.
Evaluation:
Proper use of at least one extension Functional and interactive output 🧰 Module 7: Debugging & Best Practices
Objectives:
Learn to identify and fix bugs Organize scripts and name variables Instructor Video:
"Fixing Bugs Like a Pro" (6 mins)
Topic Tasks:
Debug an intentionally broken project Add comments and organize scripts Capstone Idea:
“Fix the Code Challenge” – Collaborative debugging of peer code.
Evaluation:
Reflection on debugging steps 🌍 Module 8: Adventure – Integrations & Exploration
Objectives:
Explore integrating Scratch with hardware and web APIs Learn about sensors, robots, and real-world data Instructor Video:
“Beyond the Screen: Scratch + The Real World” (12 mins)
Integration Ideas:
🛠️ Makeblock mBot2: Use Scratch to move robot and read sensors 🤖 Arduino via S4A: LED blinking, motion alerts 🌐 APIs: Weather app using dummy API keys (via Scratch extensions) 🧱 LEGO WeDo 2.0: Motion-based games Capstone Idea:
"Smart School Project" – Students build a Scratch-based classroom alert system or robot demo.
Evaluation:
Working hardware integration Demonstration and presentation 🏁 Final Project and Showcase🎯
Final Capstone:
"Build Your Dream App or Game" – Combine knowledge from all modules.
Requirements:
Documented with screenshots and presentation Includes at least 2 Scratch extensions or integrations Evaluation Rubric:
MIT App Inventor
Course Outline (Junior)
🗓️ Duration: TBD
Target Audience: Ages 5–9
Format: Weekly session (1 hrs each), hands-on projects, and guided videos
Tools: Scratch (scratch.mit.edu), optional (scratch extensions)
🟢 Module 1: Introduction to App Inventor
Objectives:
Understand App Inventor interface Learn basic concepts: components, blocks, and design view Build and test your first simple app Instructor Video Guide:
“Getting Started with MIT App Inventor – Interface Tour & First App” (~5 min)
Tasks:
Create a "Hello World" app Use a Button and Label component Test on AI2 Companion App Evaluation Metrics:
App successfully runs on emulator or real device Correct use of Button-Label logic 🟢 Module 2: User Interface Design Basics
Objectives:
Use common UI elements: buttons, textboxes, images Apply layouts (horizontal, vertical) Design visually structured mobile screens Guide Video:
“UI Elements & Layout Tips in MIT App Inventor” (~7 min)
Tasks:
Create a user login screen Arrange buttons and fields using layout components Evaluation:
UI is intuitive and visually organized Proper component alignment 🟡 Module 3: Event-Driven Programming and Logic
Objectives:
Understand event-driven programming in App Inventor Use conditionals, variables, and basic math operations Guide Video:
“Building Interactive Apps: Event Logic in App Inventor” (~10 min)
Tasks:
Build a simple calculator app Add logic for Add/Subtract/Multiply/Divide Evaluation:
Code structure follows correct event flow Accurate calculations based on user input 🟡 Module 4: Using Multimedia & Sensors
Objectives:
Add sound, images, and video Use mobile sensors (accelerometer, orientation, etc.) Guide Video:
“Using Sound and Sensors in Mobile Apps” (~8 min)
Tasks:
Build a “Shake-to-Play” sound app using Accelerometer Add background music to an app Evaluation:
Sound/media load correctly Sensor triggers action as expected 🟡 Module 5: Storing and Retrieving Data
Objectives:
Use TinyDB for local data storage Introduction to global and local variables Guide Video:
“Data Storage in MIT App Inventor with TinyDB” (~6 min)
Tasks:
Create a to-do list app with save/load feature Store user preferences locally Integration:
📦 TinyDB
Evaluation:
Data persists after app closes Smooth add/remove item functionality 🟠 Module 6: Connecting to the Web – APIs and Online Data
Objectives:
Connect to public APIs (e.g., weather, quotes) Guide Video:
“Using Web APIs in App Inventor” (~10 min)
Tasks:
Create a weather app using OpenWeatherMap API Display city temperature using JSON Integration:
🌐 Web API, JSONTextDecode block
Evaluation:
API call returns and parses data correctly Meaningful UI representation of API data 🟠 Module 7: Working with Firebase – Real-Time Cloud Database
Objectives:
Set up Firebase for real-time data syncing Read/write user-generated content Guide Video:
“Firebase Setup for App Inventor – Real-time Apps” (~12 min)
Tasks:
Create a guestbook or chat app Enable real-time sync between users Integration:
☁️ Firebase DB
Evaluation:
Multiple users see updated content in real time Proper Firebase configuration 🔵 Module 8: App Navigation and Multi-Screen Design
Objectives:
Implement screen switching and parameter passing Organize apps with multiple screens Guide Video:
“Multi-Screen Navigation in MIT App Inventor” (~8 min)
Tasks:
Build a quiz app with intro, question, and score screens Evaluation:
Data shared across screens correctly 🔵 Module 9: Publishing and Testing for Android and iOS
Objectives:
Package app for APK (Android) and AAB (Google Play) Use MIT App Inventor iOS TestFlight process Guide Video:
“Deploying to Android & iOS – Complete Guide” (~10 min)
Tasks:
Follow Apple iOS TestFlight instructions Evaluation:
App installable on Android and iOS test devices Complete user testing checklist 🟣 Capstone Project
Project Ideas:
Community Health App – Tracks user symptoms and gives basic advice using API Eco-Friendly Habit Tracker – Encourages sustainable habits with gamification Student Planner App – Stores tasks, sends deadline alerts, syncs with Firebase Capstone Deliverables:
Functional App (APK or iOS Test version) Short demo video presentation Final report (objectives, user flow, lessons learned) Evaluation Rubric:
Course Outline (Senior)
🗓️ Duration: TBD
Target Audience: Ages 8–16
Format: Weekly lessons (1–2 hrs each), hands-on projects, and guided videos
Tools: Scratch (scratch.mit.edu), optional hardware (mBot2, Arduino, LEGO, etc.)
🟢 Module 1: Getting Started with App Inventor
Objective:
Understand what MIT App Inventor is and its interface Set up development environment for Android and iOS Build and test your first app Video Guide:
"Welcome to App Inventor: Your First App (Hello World!)" Student Task:
Create a basic app that displays a welcome message and changes text on button click Evaluation Metrics:
Ability to access and navigate MIT App Inventor Successfully building and running the first app on emulator or device 🟡 Module 2: UI Components & Event Handling
Objective:
Use UI components (buttons, labels, images, text boxes) Handle user events (click, input) Video Guide:
"Designing Your First Functional App Interface" Student Task:
Build a tip calculator that takes input and calculates tip on button press Evaluation Metrics:
UI usability and correct event handling 🟠 Module 3: Variables, Logic, and Math
Objective:
Use variables and control logic Perform arithmetic and conditional operations Video Guide:
"Programming Logic and Math in App Inventor" Student Task:
Create a simple grade calculator or quiz app Evaluation Metrics:
Logical correctness and flow Functional use of conditionals 🟣 Module 4: Working with Multimedia
Objective:
Add sound, video, camera, and image manipulation Use the Canvas for drawing and animation Video Guide:
"Bring Your App to Life with Media & Animation" Student Task:
Build a photo frame or drawing app Evaluation Metrics:
Multimedia integration and functionality 🔵 Module 5: Lists, Loops, and Data Structures
Objective:
Understand lists, iteration, and data processing Store and retrieve lists for dynamic app behavior Video Guide:
"Building a To-Do List App with Loops & Lists" Student Task:
Create a checklist or shopping list app Evaluation Metrics:
Correct implementation of lists and loops 🟤 Module 6: App Navigation and Multi-Screen Design
Objective:
Navigate between screens with parameters Video Guide:
"Making Your App Multi-Functional: Working with Screens" Student Task:
Build a recipe app with ingredient detail on second screen Evaluation Metrics:
Navigation logic and screen layout 🟩 Module 7: Using Sensors and Location Features
Objective:
Integrate accelerometer, GPS, compass, and orientation Build location-aware or motion-based apps Video Guide:
"Using Device Sensors for Smart Apps" Student Task:
Build a pedometer or location finder Evaluation Metrics:
Sensor response accuracy and integration 🟧 Module 8: TinyDB and Data Persistence
Objective:
Store data locally with TinyDB Create user sessions, saved preferences Video Guide:
"Keep User Data with TinyDB" Student Task:
Create a personal diary or user login preference app Evaluation Metrics:
Persistent data and correct data retrieval logic 🔴 Module 9: Connecting to Web APIs
Objective:
Call REST APIs using Web Component Parse JSON data and display results Video Guide:
"Using the Web: Connect Your App to APIs" Student Task:
Build a weather app using a public weather API Evaluation Metrics:
Correct use of web requests and data parsing ⚫ Module 10: Advanced UI and Dynamic Components
Objective:
Use dynamic UI generation Customize themes and build reusable layouts Video Guide:
"Advanced App Design with Dynamic Components" Student Task:
Build a dynamic news app that displays items from API Evaluation Metrics:
Reusable design, dynamic generation accuracy ✳️ Module 11: iOS Compatibility and Testing
Objective:
Test and deploy apps for iOS Debug cross-platform compatibility Video Guide:
"Publishing Your App on iOS & Android" Student Task:
Test your main app on iOS and list differences/issues Evaluation Metrics:
iOS-specific design considerations and resolution 🌟 Capstone Project Ideas
Health Tracker App (with graphs and local storage) Community Emergency App (location-based alert) Language Learning Flashcard App (API and image/audio) Eco Diary (Daily habits + TinyDB + Weekly stats) Capstone Evaluation Metrics:
Use of advanced components (API, database, sensors) 🚀 Adventure Module: Integration & Exploration
Objective:
Extend apps with external integrations and real-world systems Topics & Tools:
Database: Firebase integration for real-time updates AI/ML APIs: Use Google Vision API or Hugging Face APIs mBot2 integration (Bluetooth command execution) Lego Spike/EV3 (Simple control interface) Arduino via BLE (Sensor data visualization) Google Sheets: App as form input collector Speech Recognition: Use voice control Blockchain: (Advanced) Save immutable entries for health records Student Task:
Choose one integration and build a functional prototype Evaluation Metrics:
Complexity of integration
🟢 Module 1: Introduction to App Inventor
Objectives:
Understand App Inventor interface Learn basic concepts: components, blocks, and design view Build and test your first simple app Instructor Guide:
“Getting Started with MIT App Inventor – Interface Tour & First App”
Tasks:
Create a "Hello World" app Use a Button and Label component Test on AI2 Companion App Evaluation Metrics:
App successfully runs on emulator or real device Correct use of Button-Label logic 🟢 Module 2: User Interface Design Basics
Objectives:
Use common UI elements: buttons, textboxes, images Apply layouts (horizontal, vertical) Design visually structured mobile screens Guide :
“UI Elements & Layout Tips in MIT App Inventor” (~7 min)
Tasks:
Create a user login screen Arrange buttons and fields using layout components Evaluation:
UI is intuitive and visually organized Proper component alignment 🟡 Module 3: Event-Driven Programming and Logic
Objectives:
Understand event-driven programming in App Inventor Use conditionals, variables, and basic math operations Guide :
“Building Interactive Apps: Event Logic in App Inventor” (~10 min)
Tasks:
Build a simple calculator app Add logic for Add/Subtract/Multiply/Divide Evaluation:
Code structure follows correct event flow Accurate calculations based on user input 🟡 Module 4: Using Multimedia & Sensors
Objectives:
Add sound, images, and video Use mobile sensors (accelerometer, orientation, etc.) Guide :
“Using Sound and Sensors in Mobile Apps” (~8 min)
Tasks:
Build a “Shake-to-Play” sound app using Accelerometer Add background music to an app Evaluation:
Sound/media load correctly Sensor triggers action as expected 🟡 Module 5: Storing and Retrieving Data
Objectives:
Use TinyDB for local data storage Introduction to global and local variables Guide :
“Data Storage in MIT App Inventor with TinyDB” (~6 min)
Tasks:
Create a to-do list app with save/load feature Store user preferences locally Integration:
📦 TinyDB
Evaluation:
Data persists after app closes Smooth add/remove item functionality 🟠 Module 6: Connecting to the Web – APIs and Online Data
Objectives:
Connect to public APIs (e.g., weather, quotes) Guide :
“Using Web APIs in App Inventor” (~10 min)
Tasks:
Create a weather app using OpenWeatherMap API Display city temperature using JSON Integration:
🌐 Web API, JSONTextDecode block
Evaluation:
API call returns and parses data correctly Meaningful UI representation of API data 🟠 Module 7: Working with Firebase – Real-Time Cloud Database
Objectives:
Set up Firebase for real-time data syncing Read/write user-generated content Guide :
“Firebase Setup for App Inventor – Real-time Apps” (~12 min)
Tasks:
Create a guestbook or chat app Enable real-time sync between users Integration:
☁️ Firebase DB
Evaluation:
Multiple users see updated content in real time Proper Firebase configuration 🔵 Module 8: App Navigation and Multi-Screen Design
Objectives:
Implement screen switching and parameter passing Organize apps with multiple screens Guide :
“Multi-Screen Navigation in MIT App Inventor” (~8 min)
Tasks:
Build a quiz app with intro, question, and score screens Evaluation:
Data shared across screens correctly 🔵 Module 9: Publishing and Testing for Android and iOS
Objectives:
Package app for APK (Android) and AAB (Google Play) Use MIT App Inventor iOS TestFlight process Guide :
“Deploying to Android & iOS – Complete Guide” (~10 min)
Tasks:
Follow Apple iOS TestFlight instructions Evaluation:
App installable on Android and iOS test devices Complete user testing checklist 🟣 Capstone Project
Project Ideas:
Community Health App – Tracks user symptoms and gives basic advice using API Eco-Friendly Habit Tracker – Encourages sustainable habits with gamification Student Planner App – Stores tasks, sends deadline alerts, syncs with Firebase Capstone Deliverables:
Functional App (APK or iOS Test version) Short demo video presentation Final report (objectives, user flow, lessons learned)