Ever see a shirt and think, "Damn, I want that shirt"? But that shirt was the one that got away and you never saw it ever again? We know exactly the feeling, which is why we created and designed ProPrice for the e-Commerce loving IOS users. Now, the moment you see that shirt, that watch, that bag of Flaming Hot Cheetos, you can just simply snap a quick picture and the nearest locations and website links of stores with the most competitive prices will be provided to you. ProPrice? Every Shopper's Paradise.
What it does
ProPrice is a commerce IOS application that lets you purchase any item from retail to groceries to technology in a matter of seconds.
How I built it
- Front-End : Swift for native IOS
- Back-End : Java Spring Boot main service (src), along with a Node JS microservice for Amazon/Walmart web-scraping information. Both exposed as a RESTFul API.
- Ad-hoc tools: Python (Puppytier and Selenium) for web scraping, hosted with Flask and Firebase Cloud.
- Persistence & DevOps : MongoDB, Heroku, ngrox
- Moral Support : Coffee, chips, and love for the team <3
Google Cloud Platform (GCP) Vision Product Search offers pre-trained machine learning models through REST and RPC APIs. It assign labels to images and quickly classify them into millions of predefined categories. For ProPrice, the Product Search API is specifically trained to detect objects from within our catalogue and identifies their similarities.
GOOGLE MAPS PLATFORM (GMP) PLACES API We used GMP Places API to identify nearest stores from the user that has their desired product in stock at the lowest price!
PRODUCT PRICE SEARCH We used the Best Buy Keyword Search API which offers developers access to retail data, including prices, offers, and sales by searching across several common attributes, such as item name and brand name. We couldn't get approved API Keys for other stores in time, so we decided to develop our own web-scraping microservice module which we would query for Amazon and Walmart. Overall, with these three APIs provided by large commerce companies, a price match can be made and links to the online sites are provided to the user.
Challenges I ran into
- Working with APIs and Google Cloud Platform (GCP) Vision AI
- Obtaining API keys from Best Buy and Macy's to access their product data (item name, price) so we developed our own microservice
- Setting AWS MongoDB up and getting it to commit
Accomplishments that we're proud of
- Usage of complex Cloud Computing Services
- Being able to stay awake for so long
What I learned
- AWS is hard
- We love sleep
- Offering more features on our IOS application such as product recommendations
- Train our model to pick up more products!
- Add Apple Pay Integration for store product purchases