Module 1: Chatbot
| Course: Scratch Programming | Level: Module 1 | Project 22 of 35 |
Official Raspberry Pi Project
This lesson is based on the official Raspberry Pi Foundation project. Open it alongside this guide to access the starter project, step-by-step instructions and community remixes.
### [🍓 Open "Chatbot" on Raspberry Pi Projects →](https://projects.raspberrypi.org/en/projects/chatbot)
How to use it: Click the link above, then click See Inside on the Scratch project to explore the finished version. Use Remix to get your own copy to edit.
What You Will Build
Program a conversational sprite that responds to typed user input.
What You Will Learn
By the end of this project you will be able to:
- Use Events blocks to start scripts and respond to clicks
- Combine Motion, Looks and Sound blocks to create behaviours
- Use variables to track game state and scores
- Apply the specific Scratch concepts introduced in Module 1
You Will Need
| Item | Details |
|---|---|
| 🌐 Browser | Any modern browser — Chrome, Firefox or Edge |
| 🔶 Scratch account | Free at scratch.mit.edu |
| ⏱️ Time | Approximately 30–45 minutes |
| 📋 Starter project | Available via the Raspberry Pi link above |
Step-by-Step Guide
- Add a friendly character sprite.
- Use
ask [ ] and waitto get user input. - Store the answer in an
inputvariable. - Use
if [input contains [hello]]then say a greeting response. - Add 10+ keyword checks: name, age, weather, joke, help, bye, etc.
- For unrecognised input: say
I don't understand that yet. Try asking something else! - Add a
usernamevariable — when the user gives their name, remember it. - Use the name in future responses:
say [Nice to meet you, (username)!] - Add a help command that lists topics the chatbot knows about.
- Loop the conversation so the chatbot keeps asking after each reply.
Extension Challenges
Try these after completing the main project:
- Add a mood system — if the user is rude, the chatbot responds differently.
- Add a quiz mode the chatbot can run when asked.
- Connect to external data using the Translate extension for multilingual replies.
Reflection Questions
- Which Scratch blocks did you use most in this project?
- What would you add or change if you had more time?
- How could you reuse the ideas from this project in a different context?
Share Your Work
When your project is complete, click Share in Scratch and post the link to your class or the Techbase community.
| ← Back to Scratch Course | Next: Lesson 23 → |