This project was started with the main purpose of finding out the price of offerings for the products and if any seller is selling the product for less than the Minimum Advertised Price. This application collects information about products, their offerings, and sellers who are selling those products. We scrape this information from different marketplaces. It offers users the ability to find the sellers who are selling their products and the price of the offerings. In addition, it provides reports based on historical data.
Architecture
The web application uses Angular (10) for the User Interface (front-end) and Ruby On Rails (6) to provide API. The web application is also hosted on Amazon Web Services (AWS) using Elastic Beanstalk, S3, Postgres RDS, and Simple Email Service (SES). Service that scrapes product, seller, and offerings information from different marketplaces is developed using Golang and deployed on AWS lambda functions. Scraping is scheduled from the ROR platform using a scheduler. We have used Sidekiq to manage background jobs. It uses Stripe for payment services.