About our Project

Inspired by our relationship with the local businesses in our community, we sought to create a web app that not only brings more stability to local businesses, but also brings people within our community together. With this idea, we created Hidden Gems, a local business/social media fusion where people can share and recommend local businesses, bringing more attention to the underdog businesses of our community.

The web app features three main things: Business cards, the social media feed, and a helpful chatbot. Business cards are the backbone of our web app. They are boxes of data that contain the name, address, hours, price range, genre, tags, or any other info that could be given regarding a local business. We allow and encourage users to submit local businesses to the website, generating a "business card". based on the info they give us. With this, we create profiles for local businesses, where people can learn more about a place they did not previously know about, or leave an insightful review for places they've been to before. These businesses tie into our social media aspect perfectly, allowing users to post about the local businesses they go to, shining a light on their favorite places. Each post can contain images, captions, comments, tags, and most importantly, the local business that the user is talking about. Currently, the tags within a business card are also used for our third major feature, the Gemini-powered recommendation bot. If a user wants to find a new place they may not have been to before, then this chatbot provides recommendations based on our data and what they ask for. All three of these key features work together to connect people back to their community through the local businesses close to their hearts.

Development

This webapp was made with three main things: Passion, Caffeine, and AI. As we are two fairly amateur programmers, we decided to use generative AI to help us develop the app and shoot for the moon. With it, we were able to use tools that were unfamiliar to us, such as MongoDB, Gemini, and AWS, and program something beyond what we expected.

One of our biggest challenges was our scope. Our goal by the end was to have a fully deployed website with working and smooth social media posts, Google Places-based business entries, and data analytics, trying to create a full-fledged working social media site. However, due to unforeseen technical issues and changing tech stacks, we ended up falling short of this goal, but still doing far more than was expected at the beginning.

Another (actually implemented) challenge we had was our data management. We had difficulties deciding how to store data for the businesses and posts, being unsure of the chain of command we should use to store data. In the end, we decided to use a MongoDB Atlas to store our data remotely, and use AWS S3 to store the larger images and have the MongoDB call the AWS location of the image. This created the data flow that we sought, making it easier for us to expand our data usage.

One thing we're proud of is the AI integration through our usage of Gemini. This was the first time we worked to integrate LLMs into an actual app, so having a working and effective chatbot based on a major LLM seems like a huge milestone to us and prepares us for future work.

The main, most broad, lesson that this Hackathon gave us was problem-solving skills. Whether it was our scope, tech-stack, data storage, or the bug-ridden code our AI produced, we constantly encountered problem after problem just waiting to be solved. Together, we worked to solve each problem in our own way. One example of this is the way we connected everything together in the web app. Initially, we were unsure about how to tie everything together to make a whole user experience, but we figured out that if we use tags in most things, we can create a web of data to connect different ideas together and make better suggestions based on our data.

Continuation

In the future, we hope to implement the features that barely slipped our grasp. This includes having a working, public website, fully fleshing out the user profile system to better tailor the user experience and make it feel like a better social media, and to have data actually be used to automatically recommend the user new places. We would also try to make it so that there were some businesses generated with the Google Places API, so that users don't have to make every business entry themself.

Share this project:

Updates