Inspiration
I recently got into fragrances/colognes. Its often hard to find the best price for colognes so I was thinking of a way to find the best deal easily. However especially with colognes its not always easy to find a trusted seller, so I also wanted to implement a trust feature so that I wouldn't get scammed.
What it does
Given either a text or image entry, Sniffer returns up to 15 sellers of that fragrance, each showing a price and trust value. These are then sorted and shown to the user who can then click on the icons to take them to the store.
How we built it
Vite + React. I essentially used gemini-api to web scrape top fragrance sites and take info on pricing and how reputable the source was. I also added some small additional functionalities like being able to search using an image, and also showing nearby places to try testers, and overviews of the cologne.
Challenges we ran into
For some reason on different sessions the webscraper could return different values. At some point it would return the correct values about 50% of the time but then if you reload it wouldn't work, but if you reload again it would. Its not completely fixed but It did help to use more constricting input for the api, although that wasn't the underlying issue. If I would do it again I would not use gemini and instead use something else specific for web scraping as by the time I realized this didn't work it was too late.
Accomplishments that we're proud of
This was a solo hackathon for me and I had like no front end experience before this so just learning how to get a website up and running is something im proud of. I also made something which will be useful for myself and my personal life if I end up buying another cologne (which I probably will) so a win is a win I guess.
What we learned
How to create a working front end and web scrape. I also gained some experience using gemini and its api's as well as their limitations.
What's next for Sniffer
I would completely refactor the web scraping to make it more accurate, I would also have it check store availability manually. Also maybe adding user ratings which can alter trust scores for sellers.
Built With
- gemini-api
- html
- react
- typescript
- vite
Log in or sign up for Devpost to join the conversation.