The inspiration came from a solo cup. While discussing ideas we talked about a game where if the solo cup flipped up the person would have to do a dare in the cup whereas if it flipped down they would be safe and move on to the next person. Incorporating the "chance" feature, we started thinking of an app in which users could build their own drinks but each time they flipped a cup it would choose between two items to put in their drink. Hence we moved on to the idea of having a "random" factor to make the game a little more interesting as the drink the user will receive is solely based on luck and is not customized to the user's liking. The approach of the game is to get users out of their comfort zone and try new flavors and combinations of ingredients in their drink. The concept of the "gallery" came from having to incorporate some sort of authentication system and finding a use for why the user would want to make an account and what would be stored in that account, hence, came the idea for storing previous drinks and came "the gallery".
What it does:
Infuze is a mobile app that essentially allows users to be innovative and daring to try out beverage combinations that they have never tried before just through a click of a randomize button. Users will start off by making an account and then pressing "let's begin" to start the process of creating their drink. Next, throughout the process users will randomize their toppings for different categories such as base, additional liquids, ice or no ice, type of fruit, and type of yogurt yet, it is not that simple. Users have a 50% chance of scoring an inedible or not preferred topping in their drink, essentially making their drink unconventional. Furthermore, once their randomized drink is created users have the option to go into their gallery to view previous drink creations and have a look back on an Infuzed memory lane.
How we built it:
We started off by building the User Interface of Infuze in React Native for the front end. Next, for the backend, we created and connected a GraphQL API using AWS AppSync and the NoSQL database DynamoDB for CRUD operations. We used Amazon Cognito within the AWS Amplify framework as an authentication service for user registration, authentication, and data retrieval. For version control, we used Github and Figma for initial UI/UX design and wireframing.
We incorporated the following technologies:
Challenges we ran into:
Our main challenge was coming up with an idea that wasn't stolen. We initially had the idea of developing a 'pizzamizer' app that would randomize the type of toppings you would get on a pizza. About a quarter way into our development phase, and we realized that there already exists a web application for that exact purpose. So we decided to instead create an application that would randomize beverages! The initial idea of the beverage randomizer was to have users randomize their drinks and associate a name and a description with each unique creation. We wanted to find some way to print the name of these creations onto a discord server and store relevant data onto a google spreadsheet. To accomplish this, we found that n8n was the perfect software for the job. However, we couldn't get viable, parseable data from the GraphQL API, so we ended up dropping that aspect of the project and just focused on the full stack.
Accomplishments that we're proud of:
What makes Infuze unique is the fact that we encourage users to be a part of our community by being able to store their previous creations and allow them the opportunity to go back and create a gallery of their own randomized drinks whereas with other apps they simply randomize and move on to the next user.
What we learned:
With this being most of our team members' first project being submitted to a hackathon, this whole experience was a learning experience.
What's next for Infuze:
A future idea for Infuze would be to incorporate different common food items as functions. For example: having a function for making a pizza, pasta, burger, nachos, and even a cake. Essentially we would want this to be an app that users can have in their kitchen while cooking or take to a restaurant and find a customizable menu item and use the surprising ingredients from the app on to a real-life meal that they would eat. In addition, we would love for the future version of Infuze to include a step by step image of what is in the current drink based on the random ingredient chosen on that specific page.
Prizes we are competing for:
- Silliest of all
- Best Jugad
- Best Beginner Hackers
- Hacking with the GitHub Student Developer Pack
- Hacking with AWS