Inspiration

When we scroll on Instagram, we come across a lot of amazing restaurant deals. The current way of saving and accessing these deals is full of friction: we have to save it to a collection and then dig through it to find the restaurant's location and the deal's eligibility when we're outside. While we are doomscrolling, we are too lazy to do all that, so it is a major pain point.

What it does

  1. Media input: 1) Send to DineDeals app via Instagram native "Send" feature 2) Take pictures of promotion poster 3) Take screenshot of promotion

  2. Media extraction We use a VLM + LLM pipeline to extract information from deals from Instagram posts. VLM extracts the direct content; LLM extracts the key information from the deal (e.g., location, validity period, conditions) and checks it with context (e.g., beyond semantics, does this information actually make sense) and browsing the internet for double-checking.

  3. Deal entry: Use AI-extracted information to fill in a form. The form contains necessary and bonus information. If the AI extraction pipeline is unclear, the user can fill in the remaining and supporting information. The deal is then added onto a map that allows you to access saved deals easily.

How we built it

Roles: Marsten: Data Extracted and filtered list of restaurant data from city of Burnaby, to be integrated in our maps and backend (e.g., what's nearby, semantic search when user enters deal)

Harry: Frontend + Instagram integration + backend editor Builds the frontend of the app, builds the Instagram -> DineDeals reel sharing process that then feeds into the Media Extraction process in backend. He lowk wanted some more features by the end so he made some miscellanious changes

William: Backend Authentication-focused backend. We used Convex, a backend service that combines a lot of essentials (e.g., authentication, etc.) Into one, which made it incredibly convenient instead of having to set up our own SQL.

Pinyuan: Maps + Backend Worked on AI Media Extraction pipeline, uses Gemini API key to access VLMs + LLMs

Challenges we ran into

It was difficult coordinating all of our work, and we suffered communication issues that resulted in backend feature disjoints between what's implemented and what our lead's expectations are. The fast-paced nature of AI coding did not help with that.

Accomplishments that we're proud of

We are proud of being a group of high school and first-time hackers coming together to build a viable project. One particular piece of our project that we take pride in is the fact we created an iOS app that translates our vision for the product. The location data for users and restaurants is a feature that will help make sourcing deals convenient as well as gathering useful data for us and partner organizations. Additionally, we're proud of taking what we learned through the workshop sessions and classroom courses and applying that learning to StormHacks 2026.

What we learned

Our lead developer William pulled up with an agent community with 15 agents running all at once, and we quickly regretted it. At first, his tool made our progress expand rapidly, but agentic development moves so quickly our team couldn't even catch up, which excacerbated our communications. This resulted in a phase where we weren't synced on what our features should look like and weren't conscious about our architecture. The biggest lesson we've learned is to research the stack and the architecture before the hackathon. Not building it of course, but at least knowing what tools are to be used and roughly how each tool will interact with eachother.

What's next for DineDeals

There's a lot of room for growth for DineDeals. First of all, we should make deals publishable so that we can actually start crowdsourcing data and making our app actually useful. With that, there will have to be security measures to keep people accountable for what they share, such as associating emails and phone numbers and the corresponding moderation features. We may even add a light AI-auto moderation when a deal is published!

Beyond feature additions, we intend to gather a large user-base because fundamentally our data (and by extension the quality of our app) depends on data crowdsourcing. Once our data pool is mature enough, we can begin to collaborate with restaurants (e.g., McDonalds) and integrate portals to their systems (e.g., McDonalds app.)

A specific next feature we look forward to adding is integrating Google Places API when users find deals that are not in our dataset yet. This way we can naturally expand our database as we scale.

Built With

Share this project:

Updates

Submission history