Inspiration

Everyone at some point forgets to bring something with them to somewhere, whether that is work or school. As a high school student, sometimes I find it helpful when somebody else reminds me. This inspired me to create an Alexa skill to remind me everyday when I am about to leave the house. It is my personal packing assistant.

What it does

PackPlanner is a skill designed to help people remember what to bring to school, work, or anywhere else. For example, students can use it to remember what they have to pack for school everyday by simply saying “What should I bring to school today”. Pack Planner is powerful and easy to use. It supports multiple locations, and you can choose to have your reminders repeat every week or only on a specific day. For example, “Remind me to bring my water bottle to soccer practice every Tuesday” will make Pack Planner remind you on every Tuesday to bring your water bottle to soccer practice. You can also delete reminders easily when you no longer need them.

How I built it

I started with reading Alexa Skill tutorials and a sample Color Picker skill written in python. With some help from my parents to create an Amazon developer account and setting up DynamoDB, I was able to create Intents and Lambda functions to build the skill. The data is stored in DynamoDB.

Challenges I ran into

Initially it is very challenging to store the data in DynamoDB to be able to maintain reminders that repeat every week and reminders that happen only once. I researched online and found a solution to separate them by date and location. I also ran into difficulties with slots in Intents. The AMAZON.Date didn't work as expected, so I had to create my own custom slot that did the same thing. However, it needs many more Intents and functions to take care of different dates. I am still looking for better solutions.

Accomplishments that I'm proud of

This is my first Alexa Skill, and I'm proud of building one working skill from scratch that will help people pack easier everyday, including myself. Being able to use DynamoDB to store items as well as reading items out again is another accomplishments that I am proud of.

What I learned

I learned how to build a product that users will enjoy using. It took me a lot of time to troubleshoot various issues especially in the Intent design and handling to achieve good product quality. Also, I learned how to use DynamoDB to store data, which I'm sure will help me build future projects.

What's next for PackPlanner

I would like to add support for adding items by date instead of just weekdays. I would also like to improve the Intent design and handling, also continue to polish and improve the skill.

Share this project:

Updates