There is a big absence of PPEs. People cannot find and buy them. Not only people struggle from it, but also hospitals and businesses. One of the biggest problem, Healthcare workers do not have PPEs to continue working safely. Also, when people would like to buy the PPEs, they meet scammers, high inadequate prices, and fake products. Not having an opportunity to be sure that products are real and shop is not a scam, the cannot protect themselves.
Hack Covid will help people around the Globe to find right product in a second. Moreover, the invetory is updated every 30 minutes and people can be notified when the desired product appears. Also, what is most important, shops in that list are in the progress of verification - there are no scammers or fake products. So, people can be 100% sure that the buy the right PPEs.
Especially, there will no need to go around the city to look for PPEs, because we provide Country-wide Big Retailer (like Walmart) inventory status check every 30 minutes as well. So, people can find the location inside the app, and go directly there to purchase it.
As a final result, it will help to decrease the spread of COVID-19.
The inspiration came to me after checking lots of different news. I saw how the guy bought 17700 sanitizers to resell them with a really high price. I see how people, selling fake PPEs, take advantages of people, who really needs it. Especially, there are individuals, which create online shops with fake products or just make scam - people order online and those individuals do not send the PPEs to the people. I think it should not be like this. There should be a centralized place where people could buy PPEs around the Globe.
What it does
This is an Immediate Inventory Checking tool. It has listing of eCommerce shops and Big Retailers (like Walmart) around the globe. In the app, there is the most important information about the shop (Are prices adequate, is it verified shop and does not sell fake products, countries of operations, and etc.), as well as summary of all PPEs, which are exist in their inventory. There two main categories of the shops:
- eCommerce shops. These are websites which sell the products online and do not have in-house option of purchase. Basically, it can operate in any country, if the shop supports delivery to that country. Very simple. We scrape the data of the website every 30 minutes to get updates about the their inventory.
- Big Retailers. Each of the big retailer is a large corporation with a thousand of employess, hundreds of shops in the country of operation, and has thousands of products. Very often, such a retailer has an open API which can be used to track the availability of the particular product in the each shop. So, we have information for each product in every country for operation. You can check not only the availability of the product to order it online, you can check what is the closest to you shop has a desired PPEs. Take a look at the demo, you will see the great example with Walmart Canada and sanitizer.
Apart of the collecting these data, this app provides the next information:
- Price ranges (are the prices high or not?)
- Is the shop verified (maybe, they are scammers or send not high-quality products)
- Countries of operation and delivery details
- Amount of items in stock (if applicable)
You can also subscribe to the app to receive updates with the sanitizers.
How I built it
This is responsive Web App is built with Vue.js/Node.js. To collect all the data automatically every 30 minutes, I am using Cron Jobs + Browserless (I run there Puppeteer to scrape all the data from the websites, which does provide API of their inventory). I aslo use Dashblock for scrapping the website which is difficult to scrape by writing the code.
So, for each shop I have a Cron Job, which runs every 30 minutes. This Cron Job runs a dedicated scrapper (whether Puppeteer or API call) to collect all the data, preprocess it, and save into the database. After this, the end user will see the result on his/her screen.
For Big Retailer, there are list of countries, where the retailer is operating, and list of products. In this case, I have an open API to use. So, I run cron job, which takes list of all countries and list of all products. After this, I check the availability of each product in each country. And the save the data to the database for the easier access.
I used Google Analytics to track the visitors.
Challenges I ran into
To be honest, there is no challenges. Step by step I was building the app, speaking with people, find the sponsors (since it is non-profit application), researching the web to find PPEs available.
Accomplishments that I'm proud of
I am glad that I was avaible to build such a tool, which really can help people to obtain real PPEs avoiding scam and fake. I do not understand why people are doing this in such a difficult time. This dirty money will not make them feel good, which they earn by selling fake sanitizers, masks, or even just steal money and send nothing. If my tool will help at least one person to avoid scammers and fake products, it means it was worth to build this tool.
What I learned
People are really eager to help! I found 4 sponsors during 1 day (on Friday), who are open to provide their services. For example, Dashblock and Browserless makes my data collection very fast in comparison with the situation, when I had to write my scrappers by my own.
What's next for Hack Covid!
- Verification of already existing shops
- Obtain API to get inventory check for big retailers in the USA
- Add new eCommerce and Big Retailers support
- Categorized the shops by Countries of Operations, and discover their deliver options
- Find more sponsors
- Start advertising and promotions, collaboration with other people with the same mindset to reach more people
- Considering B2B support
P.S. Link to demo: https://youtu.be/Qu1YkvY0IYA
Try It out
browserless, cron, dashblock, node.js, online-cron-job, puppeteer, vue.js