Inspiration

This project was inspired by some frustration with pinterest board spreads. Where we saw all of these aesthetic combinations of clothes, but when you click on the clothing itself, there is no information about the actual item, where to buy it, if it is in stock, etc. When shopping, we often purchase from different retailers and have no idea how ideas blend together because you cant actually see products put together, or you cant get rid of the large, janky human models when you just want to focus on clothes.

What it does

FitCheck is a website commerce platform where you can pick clothes from product listings and arrange the clothes in an aesthetic way, share with friends, and go directly to the store page all in one platform!

How we built it

FitCheck is a React + Vite front end on a lightweight Python backend, hosted free on Vercel, with Upstash Redis for accounts, saved fits and share links.

Because live scraping wasn’t possible on our API budget, we built our own catalog: about 550 real product listings from Nike, Stüssy, Uniqlo and Brandy Melville, each with its store link and a re-checked in-stock status. Every product photo goes through a cleanup pipeline: image-classification and skin-tone-aware checks to find photos with people in them, then background removal so each piece becomes a clean, product-only cutout. Colors are read from the cutouts themselves.

Search combines a rules layer with AI. It first applies hard filters (budget, category, brand, color), then Google Gemini picks the best matches from what’s left. Every pick comes with a one-sentence reason (“Suggested by Gemini!”), and shoppers can switch AI off for instant keyword results. Keyword results appear immediately while Gemini refines them, and each search sends only a small slice of the catalog to keep token use low.

Shoppers drag pieces onto a board, swap alternatives in place, share the fit as a link, and open a “Store links” window with every piece, price, store and total. We also built privacy controls: “Clear my data” and “Delete account” are both one click away.

Challenges we ran into

We ran into a lot of challenges in regards to populating the website with clothes, especially since live web scraping is impossible with the given api access without spending money. We also feel strongly that we did not want models in product listings, so we had to find ways to exclude listings with human actors, or find ways to crop out the human.

Accomplishments that we're proud of

We are proud of the way that we were able to populate the dataset, using machine learning image classification models to find models in product listings and to crop. We were able to work around several known issues with this sort of problem, such as models with varying skin tones being treated differently from each other by the program. We are also very proud of our UI, how crisp everything flows together and the scale of our operations given the time frame.

What we learned

We learned a lot about fullstack development, the challenges of integrating AI features with limited token access, and database integration with live web services.

What's next for FitCheck?

We would like to add in live web scraping so that we can get an even more diverse dataset and to streamline the image classification using different technologies such as xAI's imaging capabities.

Built With

Share this project:

Updates

Submission history