The current public health crisis has necessitated community-wide self-isolation. People fear going to shop for groceries and other necessities, which shouldn't be the case. Our website helps promote good social distancing by informing people about the business of nearby grocery and retail stores by analyzing the traffic data and popularity times near that particular store. We want people to be able to shop with a sense of security and safety.
What it does
The website queries multiple APIs and organizes the information in a website for users to determine the best time to visit grocery stores to avoid human interaction. Users can also search for specific products and the website will determine which local Walmarts have the item in stock.
How we built it
The web app itself was built using React and Flask. We used multiple APIs in a Python web server and wrote our own webscrapers to gather information, which was then parsed and displayed using React. The app was developed collaboratively through VSCode LiveShare, and finally deployed using Google App Engine.
Challenges we ran into
One challenge that we ran into was trying to find a free, available API to find the inventory of nearby retail stores. We couldn't find any, so the solution we came up with was by scraping multiple websites to locate SKU numbers and the stock of certain items. Also, we ran into some issues launching our website and putting on the domain we received from domain.com.
Accomplishments that we're proud of
We are proud to have finished a working prototype. Along with an elegant, modern-style website with smooth animations and icons, we combined multiple APIs and also wrote our own webscrapers for backend.
What we learned
We learned how to use the various APIs. We have also never worked with the combination of React and Flask before, which was interesting to work with. We also gained more insight on creating web scrapers.
What's next for Shop With Space
There are several features and implementations that we want to add to Shop with Space in the future. For the user interface, we could add features such as a radius slider to filter stores by a specified distance. We could also build a broader inventory checker, since with the resources that we could acquire during the hackathon, we could only find a working inventory checker for Walmart. Lastly, we could using machine learning to learn how busy a store is given traffic, popularity, and other factors.
Exporting the video took longer than expected. We have put the video in a shared Google Drive folder in one of the "Try it out" links. There were some complications with the domain name too.