Building a shopping website in under a month

Addy Bhatia
5 min readMay 10, 2020
Photo by freestocks on Unsplash

It’s early April and my girlfriend’s birthday is in less than a month. All shops are closed in lockdown, amazon takes forever to deliver, and I have no idea where to start. Maybe I can make her something?

On her downtime, you can find her watching Netflix, cooking, or pursuing shopping websites, looking for something to buy, mostly amounting to window shopping. Netflix is great, don’t wanna mess with that. I’m no cook, so let’s skip that idea. I do have a good fashion sense, though.

Online shopping starts with finding the right clothes, purchasing them, and then getting them delivered. Retailers like Walmart and H&M have already created a robust infrastructure to purchase and deliver items. They’re also great at finding items suited to your taste from their own catalog.

And that’s when it hit me.

Each retailer is great at customizing the shopping experience within their own website, but most shoppers often pursue through multiple retailers. Could we connect these sources together to create a more personal shopping experience?

Let’s build a custom recommendation engine.

Where to start?

And as an occasionally shopper, I’m also aware of the pain of looking through an endless list of items, clicking on a few that interest me. I know she shops at both Shein and H&M. So let’s start there.

I built a web scraper in Python — a language so easy to pick up, no wonder I chose it to code in after studying Mechanical Engineering for four years.

Everyday, I’ll scrape the “daily” sections of these websites, and voila! I have an endless source of clothing items she’s never seen before.

How can we forget about “AI” and “ML”?

A recommendation engine would be incomplete without, well, learning something about the user. We can categorize each clothing item in distinct parts, such as color, price, their descriptions/titles (preach sentiment analysis).

Depending on the occasion, my girlfriend doesn’t like clothes that are too revealing. So let’s aim to add another “feature” in this engine, for skin revealing count (I’m not good with names, I’m an engineer).