Inspiration
We drew inspiration from our personal experiences to create this product. Consuming healthy meals is an important part for us, yet its challenging with the price of groceries and limited budget. We implemented Buy Smart to help students like ourselves to make healthy and budget friendly meal choices in life.
What it does
BuySmart is an app that compares grocery prices for each item in your list so you're more educated about your purchasing choices. While the primary purpose is to help you save money it also has some additional features to ease your grocery planning. Based on your grocery list, the app gives you nutrient information and a health score that helps you modify your list to maintain a balanced diet. Our aim is to encourage students to prioritise health along with finances, bridging the gap between the two aspects. Additionally, we also have a recipe assistant for the days you don't know what to cook or need something new to try. BuySmart helps you by suggesting simple recipes and then suggesting the cheapest grocery list based on it - doing all the "boring" planning work for you. BuySmart is the perfect one stop solution for all your grocery related plans - being the assistant every student deserves!
How we built it
Foundation was stable, we worked feature by feature and kept testing after every major change. The app was built with a React frontend and a FastAPI backend. We used Playwright to scrape grocery product data, first from Woolworths and then from Coles, and stored that data in CSV files so the app could compare products across both supermarkets. We also built custom logic for product matching, scoring relevance, comparing store totals, and calculating nutrition information from the recommended basket. On top of that, we added a recipe assistant powered by Ollama so users can ask for simple meal ideas, get a recipe suggestion, and then add the suggested ingredients directly into their grocery list. A lot of the build was not just about making features separately, but about making sure the recipe assistant, grocery list, comparison engine, and UI all worked together as one smooth flow.
Challenges we ran into
- First timers so initial ideation and starting point was hard but with the guidance of our mentor we were able to overcome that challenge and work our way through to build the product. One of the biggest challenges was scraping and cleaning supermarket data. Getting Woolworths working took time because we had to inspect network requests and figure out how product data was being loaded. Coles was even harder because the site was more aggressive about bot detection, and our first scraping approaches either returned empty data or got blocked entirely. We had to experiment with different approaches, inspect the site structure, and eventually adjust our scraper until we were able to collect usable product data. Another major challenge was product matching. Even after scraping worked, the app could still recommend the wrong item because supermarket search results often include unrelated products. A search for tuna could bring up cat food, and a search for bananas could return random products with the word banana in them. We had to improve the matching logic a lot by adding aliases, relevance scoring, and penalties for clearly wrong matches. That part was much trickier than it looked because real grocery data is noisy. We also ran into challenges with AI integration. We wanted the recipe assistant to feel genuinely useful, not like a hardcoded chatbot. At the same time, we wanted to avoid paid APIs, so we used Ollama locally. That solved the cost issue, but created a new challenge because the model had to be constrained to only suggest ingredients our grocery app actually supports. We had to carefully design prompts, add validation, and include a fallback approach so the feature stayed usable and did not break the rest of the experience.
Accomplishments that we're proud of
As this was our first hackathon, it was a great experience to come up with the idea and execute it within a short period of time. We came across many hurdles in areas of development, initial starting point but with the advice from the mentor, we were able to overcome them. We are really proud that the app feels like one connected product rather than a collection of disconnected features. A user can ask for a meal idea, get a recipe, add ingredients to their grocery list, compare supermarket prices, and then see nutrition information and a health score for the final basket. That full flow is what makes the project feel practical and complete. We are also proud of the fact that we got real supermarket data working. Scraping one store would already have been useful, but getting both Woolworths and Coles into the same app made the comparison feature much stronger. On top of that, we built custom logic to reduce bad matches and make product recommendations more realistic, which made a big difference to the quality of the results. Another thing we are proud of is the recipe assistant. Instead of just comparing prices, the app now helps users decide what to cook and then turns that into a shopping flow. That made the project much more useful and much more interesting from a user perspective. Finally, we are proud of how much we learned while building this. A lot of the work involved debugging things that did not work the first time, especially scraping, product matching, UI state issues, and local AI integration. We had to keep iterating, keep testing, and keep improving the logic until the app behaved the way we wanted. Seeing it all come together into a functional product was really satisfying.
What we learned
During the ideation process, we learnt that bringing an idea into existence is looking at the product from the user's perspective rather than solely approaching the build from a developer's perspective. As a team, we thought about user experience deeply and also showed our prototype to some of our peers to gain feedback on the app. Through this hackathon, we also learnt how to do effective teamwork while working on a project, as first timers, and communicating efficiently in order to reach our shared goal. Apart from that we were also able to advance our technical skills and were fortunate to learn from each other as well as our mentor during this process. We are incredibly happy with our team's journey in this hackathon!
What's next for BuySmart
For the app we aspire to have a live tracking system for the databases from the stores and expand it to other outlets as well. Additionally, we want improve our recipe suggestions and consider different dietary requirements with inclusion of a budget.
Log in or sign up for Devpost to join the conversation.