Inspiration
We were inspired to build this app based upon our own personal needs. Every one has food cravings but rarely are those cravings great for our diet. With our Alexa Nom or Not skill, you can ask your new diet partner Alexa whether or not you should be sneaking in that piece of chocolate.
What it does
The user asks Alexa if the food they're about to nom fits into their diet plan or not. Alexa checks a custom built nutrition database and extracts the pertinent nutritional information to make her decision. If the meal fits into your diet for the day, she will confirm it and tell you what the dish is rich with. i.e. carbs, protein e.t.c. If the meal will not fit into your diet, Alexa will let you know that it is high in caloric or fat content.
How we built it
The app was built utilizing Flask-ask and pandas. The data was parsed and stored in a pandas data frame using jupyter notebooks and stored as json to be utilized by the Flask server. The Flask server variant Flask-ask is built specifically to integrate with Alexa and the Amazon Echo. The Flask server was hosted locally on one of our machines using ngrok to open a secure https tunnel for Amazon to connect through.
Challenges we ran into
Getting the Echo to play nicely with the wifi here at GrizzHacks was actually very difficult. Ultimately the Echo connects to a cell phone hotspot and then Amazon connects through an https tunnel to the locally hosted Flask server. Alexa's limited speech pattern recognition was another large obstacle. Coding was the least troubling portion when presented with the challenge of structuring a conversation with the user.
Accomplishments that we're proud of
It WORKS!!! Both of us worked fairly independently on our own areas. Victor utilized pandas dataframes to parse, clean, and extract the data needed while performing crucial calculations. Kyle worked extensively with the Alexa skill kit and Flask to give the skill its structure and give Alexa her personality.
What we learned
Having never used pandas nor having ever built an Alexa Skill, all of what we did was a learning experience. With knowledge of python only, Victor expanded his skillset to handling large data sets with pandas. Kyle dabbled with web servers and Alexa skill building which were both foreign until the hackathon. Ultimately just getting the app to work was a huge confidence boost.
What's next for GrizzHacks2
Nom or Not will likely be a pet project of Kyle's. He was wanting an app to do exactly what it does for quite some time. Owning two echo dots but without any useful skills, this skill could revitalize the devices for him and other health minded individuals.
Log in or sign up for Devpost to join the conversation.