Inspiration
Initially, one of our project members was looking for a new processor to upgrade his setup at home. Being a college student, of course he wanted to find a good quality processor while also snagging a sweet deal too. This took him to microcenter, where deals ranged from $50 - $100 on almost all CPU's listed. However, noticing that each CPU had a deal, he doubted whether the deals were truly as good as what they seemed or just put there as incentive for people to purchase them under the guise that they were getting a deal when they really weren't.
What it does
The CPU price tracker scrapes information regarding the CPU name, price, timestamp, stock, and ID. The information is sorted into a .json file which is stored into the Firebase cloud. The price tracker scrapes data on a daily basis, adding a new entry for price and timestamp for CPU's already listed in the .json file, or creating new entries for newly added products. The data from the .json file is then compiled into a web app which has a search function, allowing users to look for certain CPU's, where matching ones are brought up. For each matching entry, the number of items in stock and a graph of the price vs. the time is displayed, along with a link to buy the CPU from the actual domain.
How we built it
We mainly built the backend using Python, scraping information using python libraries and sending the information to a Firebase cloud storage. The frontend was built using React, with MUI to help with the styling and format.
Challenges we ran into
Coming into the hackathon, some team members did not have too much experience with languages like HTML, Javascript, and CSS let along using the React library. Additionally, we were unfamiliar with certain services like Firebase and Google Cloud. Other challenges include finding an optimal file type to store our data and extracting the information into line graphs that constantly update every day.
Accomplishments that we're proud of
We are proud of creating a presentable UI for out price tracker, and adding capabilities to scrape information at a repeating time interval. Additionally, implementing a search bar that matches to previous entries took quite some time to understand and implement, and seeing it work at a level on par with our expectations truly feels like we have overcame a significant hurdle.
What we learned
Since this was our team's first hackathon, we learned how to collaborate with each other to create a fully functioning web application. We learned the importance of teamplay and relying on each other, whether it be assigning certain tasks to someone who was more familiar with the concepts involved to bumping all three heads together to debug and overcome obstacles, in order to create something that we could not have done individually. In the process of actually coding the project, we also were exposed to a variety of languages and frameworks, allowing us to develop our technical skills further.
What's next for CPU Price Tracker
Currently, the CPU price tracker is only limited to processor's listed on microcenter. We plan to expand the capabilities of the price tracker to other domains like Newegg, Amazon, and Walmart. Additionally, we also seek to increase the range of products recorded in the price tracker to items such as monitors, graphics cards, laptops, and more.
Log in or sign up for Devpost to join the conversation.