Inspiration
Listen, I'm not going to pretend the inspiration behind this one was some humanitarian desire to help moms, pops, and shoppers around the globe avoid constant treks to and from the store because they forgot an item. Find Me Grocery helps ME as much as the next person. My sister and I shop twice a month and meal prep for the both of us for the whole month; can you imagine how inconvenient it is when we realize we don't have a certain item?! Quick, sis, find me the closest store and make it cheap! Now I can use my own code instead of manually flipping through options and googling dietary restrictions for an hour.
What it does
The code takes in API and data from the web as well as user input for what they need to buy ASAP, and returns the ideal store for the user to go to based on nearby stores, open stores, and best prices. It also gives the user a shopping list if allergens should be factored in.
How we built it
So since I am so new to coding, I decided to stick with what I know; python, and google colab's jupyter compiler. Some mentors mentioned JavaScript would be better for this idea, but I knew I wanted to cross the finish line more than I wanted to have a perfect executed idea so I built it with lots of reading, coding and recoding and uncoding and decoding, communicating and asking peers, and grit. Also, google. We love online help forums.
Challenges we ran into
The biggest challenge for me was learning how to use and implement the google maps API because I went back and forth with what I wanted the code to be able to do. Initially, I was adamant about the app being able to pin your location in the background in order to navigate you to the closest store in the shortest time, once the stores were shortlisted for affordability. However, given the time restraints, I actually purchased the google maps API for its existing distance measuring AND nearby search options and found that they have a geocaching function as well. Fine-tuning the details for webscraping the tables throughout the code was also the longest problem-solving session because getting the right data with BeautifulSoup when the tags don't have specific classifiers is truly a trial in patience and perseverance.
Accomplishments that we're proud of
I personally am super happy with how much practice I have been able to gain with BeautifulSoup. When I took my first coding class last semester, it was Data Manipulation with Python and the whole bs4 section was the most frustrating for me. All the mentors I approached for help advised me that there won't be enough time to troubleshoot the particular problem I was having since I started my project on Saturday night around 8pm (!!!), but I just couldn't leave it. I HAD to know how to code it right, not just "hard-coding" the values I needed. The moment I figured it out and it worked was such a proud moment and made me feel like flying.
What we learned
I have never, EVER imagined I could ideate, plan, and execute a project like this 1) in general, 2) on my own, 3) in such a short time, and 4) with this much fun and sense of community. It's my first hackathon, and my first time ever coding outside of the one coding class I took. The biggest lesson was the approachability of concepts that seemed intimidating and people who seemed so far removed from myself in their expertise and levels of knowledge. Intimidation just dissipated after the first day and anticipation replaced it! I loved my time at HackGT and will absolutely be looking for and participating in other hackathons forever.
What's next for Find Me Grocery
Oh my gosh, so much! I want the live location finding after we make the origin address a user-input street address option which the google API can translate into the coordinates it needs. I want the allergens block to account for and handle multiple criteria simultaneously, and for the results to be tiered and weighted with various weights for different allergens depending on their priority to the users. Speaking of priority, I want users to rank the importance of distance, total time shopping time, exact item match, item affordability, and total estimated budget options so that the code can provide a super personalized shortlist of stores and grocery list items. The other big section that was unfinished was out of a desire to pull price info for the same items in different stores for comparison so the best match store would be one that ranks best in terms of closeness AND best prices for all items. There is always room to thrive.


Log in or sign up for Devpost to join the conversation.