The U.S. Government Accountability Office found that about three-quarters of eighth grade students were not proficient in geography in 2014, and had shown no improvement since 1994. This compelled me to do something to solve this problem, so I created Stamp My Passport, a fun Alexa skill students can use to learn geography. Stamp My Passport teaches kids the name and location of countries in each continent along with their capitals and national languages.

What it does

When users enter the skill, they choose to learn countries from one of six continents: North America, South America, Europe, Asia, Africa, and Oceania. Then, they receive questions showing a picture of a country and asking for its name. The game starts with multiple choice questions giving the language and capital of a country. Once the user gets these questions correct, they move on to short-answer questions with no hints. If a user gets a country right without any hints, they get a stamp for that country on their passport.

Other features include:

  • Ask to show the location of a country. "Show me Libya"
  • Create unique passports for each user in the household. "Create a passport"
  • Delete passports. "Delete a passport"
  • Pick a continent. "North America"
  • Pick a mode. "Learn" to learn, "Review" to review stamped countries
  • Pick both a mode and a continent. "Learn/Review North America"
  • Ask for help on the game rules. "Help"

In addition, there are personalized Amazon Polly voices for each continent, and the number of stamped countries is shown on the screen.

The skill is released in all regions supporting English (U.S., Canada, U.K., India, and Australia).

How I built it

I built Stamp My Passport using the Alexa Skills Kit SDK for Node.js. I hosted the skill using AWS Lambda and DynamoDB.

Challenges I ran into

APL was new to me, and I had to take a lot of time to understand it thoroughly. Additionally, I had to figure out how to efficiently download maps, attribute them to their authors correctly, and write out all the logic in my backend code.

Accomplishments that I'm proud of

Stamp My Passport is usable on all Echo devices, including Spot, Show, and TV, as well as the voice-only Echo/Dot/Plus. I was able to accomplish this by sending cards to the Activity tab of the user's Alexa app in lieu of displaying an image on the screen. Initially, I faced challenges getting the map large enough to view on a Spot, but eventually I was able to get it done.

I'm also proud that I was able to incorporate Amazon Polly voices in my skill to represent each of the different continents of the world.

What I learned

I learned about how to use APL, a new technology I had never experienced before. I also had a fun time learning all the countries in the world!

What's next for Stamp My Passport

I want to make a version of Stamp My Passport that supports Echo Buttons, so users in the same household can play against each other to guess countries correctly. I might add this mode as an in-skill purchase for users who want the added level of competition. I could also feature scheduling and reminders so users can plan to learn a set number of countries each week and improve their learning.

Built With

Share this project: