Make a Greeting Card Come to Life!
|Time Required||Average (6-10 days)|
|Material Availability||Computer with internet access|
|Cost||Very Low (under $20)|
AbstractA singing monkey? An elderly couple doing the chicken dance? What kind of funny electronic cards do you like to email people? Feel free to dream up your coolest and funniest card ideas, because in this science project, you'll create your own animated greeting card with a simple-to-use programming language called Scratch. Scratch is a programming language that makes it easy to create interactive stories, games, music, and art. When the program you have written is complete, you can even share it online!
Use the Scratch programming language to make an interactive greeting card.
David B. Whyte, PhD, Science Buddies
Cite This PageGeneral citation information is provided here. Be sure to check the formatting, including capitalization, for the method you are using and update your citation, as needed.
Last edit date: 2017-09-27
Who doesn't like to get a greeting card? Getting a card lets you know that someone took time out of their day to think of you. But more and more these days, people are sending and receiving electronic greeting cards. These "e-cards" have the advantage of being easy to send, quickly received (now it doesn't matter if I don't remember my grandmother's birthday until the day of!), and more fun because of their interactive nature. For example, you could design a card where the recipient gets to interact with the card by clicking on it, answering a question, or pressing buttons, and these interactions trigger animations. See the Bibliography section for an example of a "Happy Birthday" card made with Scratch, or do a web search for "Scratch greeting card" to find more examples.
But what is an electronic card, and how does it work? The electronic greeting card is actually a computer program. Any time you are using a computer, you are interacting with a computer program. The program tells the computer what to do. When you type something with a keyboard, for example, computer programs translate the sequence of keys you hit into a list of letters on the screen. Other programs allow you to upload pictures and send them to friends online. In this computer science project, you won't just use programs written by someone else, you will write your own interactive computer program with an easy-to-use program called Scratch. Do not worry, it is easy! Scratch is built for kids with no programming experience at all. It has lots of easy-to-understand blocks (code) that you snap together to give the computer its instructions. Also, this science project has lots of advice, tips, and help to get you started. Plus, it's fun and gives you the power to create almost anything you can dream up!
In this computer science project, you will get to make your own animated greeting card. You will decide what the card will say and which pictures you want to add. In Scratch, the pictures are called sprites. You will write scripts to make your sprites do all sorts of things. For example, you could write scripts that make a character jump, a hat spin, or a word rock back-and-forth. Once you get started with programming, you'll find there are limitless possibilities for what you can create.
In this computer science project, you will get to make your own animated greeting card. You will decide what the card will say and which pictures you want to add. In Scratch, the pictures are called sprites. You will write scripts to make your sprites do all sorts of things. For example, you could write scripts that make a character jump, a hat spin, or a word rock back-and-forth. Once you get started with programming, you'll find there are limitless possibilities for what you can do.
Terms and Concepts
- Computer program
- Scratch programming language
- What are pictures called in Scratch?
- Based on your research, where was the Scratch programming language developed?
- What kinds of animations and interactions do electronic cards usually offer?
- Buckleitner, W. New York Times Online. (2009). Scratch Helps Kids Get With the Program. Retrieved March 23, 2010, from http://gadgetwise.blogs.nytimes.com/2009/05/13/scratch-helps-kids-get-with-the-program/
These resources will introduce you to Scratch:
- Science Buddies. (2011). Scratch User Guide. Retrieved June 1, 2011 from www.sciencebuddies.org/science-fair-projects/project_ideas/scratch-intro.shtml
- Scratch Team (n.d.). Getting Started with Scratch version 1.4. MIT. Retrieved September 14, 2017 from https://download.scratch.mit.edu/ScratchGettingStartedv14.pdf
- Scratch Team (n.d.). Reference Guide Scratch version 1.4. MIT. Retrieved September 14, 2017 from https://download.scratch.mit.edu/ScratchReferenceGuide14.pdf
For an example of a greeting card made with Scratch, see:
- Scratch Team, MIT. (2013, August 12). Greeting Card. Retrieved July 24, 2014 from http://scratch.mit.edu/projects/11806234/. Note: this card is written in the new browser-based version of Scratch 2.0. The instructions for this project use Scratch 1.4.
For more information about electronic cards, visit:
- Wikipedia Contributors. (2010, January 27). E-card. Wikipedia: The Free Encyclopedia. Retrieved March 30, 2010, from http://en.wikipedia.org/w/index.php?title=E-card&oldid=340249969
News Feed on This Topic
Materials and Equipment
- Computer with internet access and Scratch installed. See the procedure for instructions on installing Scratch.
Remember Your Display Board Supplies
Poster Making Kit
ArtSkills Trifold with Header
Scratch Project Note
This project idea was written using Scratch version 1.4, which is available for download here. A Science Buddies tutorial for Scratch 1.4 is available here and additional tutorials are available on the download page.
The newest version of Scratch (2.0) is based on Adobe Flash Player, which will be retired in 2020 due to security flaws. Due to these security risks, Science Buddies has chosen not to update these instructions to Scratch 2.0. However, this project will work in Scratch 2.0. If you want to use Scratch 2.0, you can download an offline version here. If you must use the browser-based version (for example, you are using a school computer where you cannot install software), you can access it here. You may need to enable Adobe Flash Player in your browser to get Scratch to work.
Getting Started with Scratch
- The first thing you should do is download the Scratch program from http://scratch.mit.edu/scratch_1.4/. If you need help installing it, read the Science Buddies Installing & Getting Started with Scratch page. This short guide will familiarize you with Scratch.
- If this is your first time using Scratch or if you need a refresher, read the Science Buddies Scratch User Guide.
Making and Sharing Your Greeting Card
- Define a need. Decide on the occasion and for whom you're making the card.
- Do background research. Figure out what kind of pictures, animations, and interactions in the card will be enjoyable to the recipient.
Establish design criteria. Decide what your card will contain. The card can be as detailed and action-packed as you want, but there are a few basic elements it must have to make it a strong science project:
- A title, such as "Happy Birthday," "Happy Valentine's Day", etc.
One or more pictures.
- The images (and text) in Scratch programs are called sprites.
- You can make sprites using the Scratch editor or you can import them (meaning bring them in from another file folder within Scratch or from your computer).
- See below for details about making new sprites.
Scripts that "animate" the text and pictures. See Figures 2–6, below, for examples of scripts you could adapt for your greeting card.
- Scripts are the instructions that control your sprites.
- They can make a sprite spin, bounce, change color, appear and disappear, and do just about anything else you can imagine. The examples below show a few scripts you could adapt for your card, but there are many more you can create yourself!
- Since you're making an interactive card, at least one of the scripts should include a way for the recipient to trigger an action.
Figure 1. This script makes the sprite to which it is attached spin when the green flag is clicked. In this case, the sprite will spin 15 degrees counterclockwise a total of 50 times and then stop.
Figure 2. In this script, the sprite spins when the spacebar is pushed. This is similar to the script above, but uses the space bar, rather than the green flag, to activate the script.
Figure 3. This script will make the sprite to which this is attached grow and shrink rapidly five times, like a beating heart.
Figure 4. This is a script example that makes the sprite rock back and forth.
Figure 5. This script makes the sprite 1) ask a question, 2) wait for an answer, 3) change its look ("costume") repeatedly if the answer is "yes." In this case, the "costumes" are two pictures of a girl—once while she's in the air and once while she's on the ground. When the pictures are shown alternately, this script makes the girl appear to be jumping up and down.
- Prepare preliminary designs. Now it's time to put all the pieces together and figure out exactly how the Scratch card will look! Start by making some simple sketches on paper of what you want the card to look like (don't worry if you aren't an artist—stick figure art is fine!).
- Build and test a prototype. Once you've made your preliminary designs on paper, you're ready to start programming the card.
Start by adding some pictures and text (sprites) to your card. There are several ways to add sprites (see Figure 7):
- You can use the Scratch editor to paint a new picture or add text by clicking on the image of a star with a paintbrush next to the words "New sprite."
- You can import pictures into the Scratch program from your computer or a file within Scratch by clicking on the image of a star with a folder next to the words "New sprite."
- You can have the Scratch program pick a random sprite for you by clicking on the image of a star with a question mark next to the words "New sprite."
Figure 6. New sprites. There are three buttons for new sprites. From left to right, they are: paint a new sprite, choose a new sprite from file, or get a surprise sprite. If you use the "choose a new sprite from file" button, you can either select from sprites that came with the Scratch program, or import an image you have on your computer.
- To add a sprite, click on one of the "New Sprite" buttons. It's a good idea to give each sprite a descriptive name. See Figure 8, below, for directions on where to enter sprite names.
Figure 7. Click on Costumes to edit your sprites. You can name them using the text box, shown here with the red circle around it.
- Add scripts that make your sprites move, ask questions, etc. according to your sketches and designs.
- Periodically run your card to see if your scripts are behaving the way you intended. If they aren't, you'll have to figure out why. See the Troubleshooting section, below, for more advice.
- Redesign and retest as necessary. Read the Science Buddies Troubleshooting a Program in Scratch page if you need help with your program. Also, take time to evaluate if you like how it all looks. Does it get across the message you wanted? If you aren't happy with it, feel free to go back to step 4 and try again.
- Present the results. Once you have made your card, you can share it. If the recipient is there with you, you can run the card on the computer for him or her.
If they're far away, you can either:
- Email them the Scratch program file that you saved your card in, as well as the link for downloading Scratch, or
Upload the card to the Scratch website and email your recipient the URL (web address) for your finished project.
- For more instructions on uploading a project to the Scratch website, read the Getting Starting Guide in the Scratch Guides section of the Scratch Help page.
Preparing Your Science Presentation
For general advice on engineering presentations, see the Science Buddies Engineering Design Project Guide.
Consider including the following in your presentation:
A goal. For example, to "write an interactive computer program that can be shared online."
- Include the theme of your card in the goal section.
- A list of requirements. These are the things your program must do.
- A description of Scratch.
Scripts you wrote, with a description of what they do and how they work.
- Include original scripts that you created.
- A laptop with your program loaded and ready to run. If you are not able to bring a computer to your presentation, take several screenshots of your programming instructions and greeting card and print them out.
- A goal. For example, to "write an interactive computer program that can be shared online."
Communicating Your Results: Start Planning Your Display BoardCreate an award-winning display board with tips and design ideas from the experts at ArtSkills.
Keep the fun going! Find local opportunities related to this project.Register on ActivityHero
If you like this project, you might enjoy exploring these related careers:
Multimedia Artist or AnimatorIf you've ever watched a cartoon, played a video game, or seen an animated movie, you've seen the work of multimedia artists and animators. People in these careers use computers to create the series of pictures that form the animated images or special effects seen in movies, television programs, and computer games. Read more
Computer ProgrammerComputers are essential tools in the modern world, handling everything from traffic control, car welding, movie animation, shipping, aircraft design, and social networking to book publishing, business management, music mixing, health care, agriculture, and online shopping. Computer programmers are the people who write the instructions that tell computers what to do. Read more
Computer Software EngineerAre you interested in developing cool video game software for computers? Would you like to learn how to make software run faster and more reliably on different kinds of computers and operating systems? Do you like to apply your computer science skills to solve problems? If so, then you might be interested in the career of a computer software engineer. Read more
- Create other greeting cards with new themes.
- Add more interactive elements to your card.
- Create new scripts to make your sprites move. For example, how would you make a sprite hop across the card?
- Add music to your card.
Ask an ExpertThe Ask an Expert Forum is intended to be a place where students can go to find answers to science questions that they have been unable to find using other resources. If you have specific questions about your science fair project or science fair, our team of volunteer scientists can help. Our Experts won't do the work for you, but they will make suggestions, offer guidance, and help you troubleshoot.
Ask an Expert
News Feed on This Topic
Looking for more science fun?
Try one of our science activities for quick, anytime science explorations. The perfect thing to liven up a rainy day, school vacation, or moment of boredom.Find an Activity