Inspiration

The goal of this project is to relieve some of the "cabin fever" caused by recent events.

What it does

Plan My Staycation is an Amazon Alexa that plans a Stay At Home Vacation for those needing a break from the monotony of the current "stay at home" lifestyle. When you ask it to plan your staycation, Alexa will cheerfully plan you an itinerary of at least 3 activities that can be done at home throughout the day. From the companion website you can find links to resources for all of the activities Alexa had planned for you (and more).

How I built it

This project was built primarily using the Alexa Skills Kit through the Amazon Developers Website. The skill is Alexa-Hosted using Python, meaning that most of the code was done within the Alexa Developers coding environment.

The frontend of this skill is based upon an Interaction Model where the user "converses" with Alexa. I coded 6 different "Intents" which allow Alexa to respond to various commands. Building the frontend also consisted of creating a dialogue model that felt natural to interact with. The backend of this skill contains the logic of the program. Each "intent" defined in the frontend needs a "handler function" in the backend, which was coded using Python. At the end of each Handler, Alexa knows to ask the user what they want to do next.

The companion website for this skill is fully responsive and was built using a template based on html5. I ran into some formatting issues with the template which were eventually resolved, and added some additional CSS animations to the frontend.

Challenges I ran into

I had never created an Alexa Skill before this weekend, and spent the first part of the hackathon reading through documentation and watching the developer training sessions on YouTube. I finally started understanding the terminology and process by the end of the first hackathon day, but realized I may not be able to incorporate all the features into the skill as I would like.

Some other challenges included:

  • Incorporating GitHub even though most of the coding was done through Amazon's own coding environment
  • Figuring out how to host domain on Netlify

Accomplishments that I'm proud of

  • Built a custom Alexa Skill from start to finish
  • Pushed myself to use Python even though I'm not well-versed in it
  • Built a project I'd use in the future

What I learned

  • Learned how to read through documentation and incorporate what I learned into a program of my own
  • Learned how to use hosting services like Netlify to host domains from Domain.com

What's next for Plan My Staycation

  • Officially publish Skill to the Alexa Store
  • Incorporate the Eventbrite API to include events from a specific day
  • Add the option to send user a text/email with a list of suggested activities and links

Built With

Share this project:

Updates