🌟 Inspiration
During the pandemic, some provinces mandated proof of vaccine and of well-being before entering buildings. We wanted to build something similar but for hygiene, to combat the Waterloo/CS smelly epidemic. 🤢
🛠️ What it does + How we Built it
We didn't want users to just say they showered. They have to prove it. 🚿
- Login & Onboard: Users sign in with Google (Firebase Auth) and connect their MetaMask wallet (Base Sepolia testnet). Crucially, they add their friends' phone numbers for... accountability. 📞
- Shower Tutorial: To prove users know how to shower, complete an interactive tutorial using TensorFlow.js and the MoveNet model. They must perform four key shower gestures (scrub head, scrub armpits, scrub the booty) for 10 seconds each, all verified by their webcam. 🤳
- Shower Prove: To prove that a user showered, we listen for running water. The total shower time must also be more than 5 minutes, guaranteeing good hygiene. 💧
- Mint the NFT: Once verified, they mint their ShowerNFT by adding a "shower thought." This ERC-721 token is now valid for 24 hours. 💡
- Stay Fresh: The user dashboard shows a 24-hour countdown timer, proving their cleanliness to the world. 🌎
🛑 Challenges we ran into
TensorFlow.js Movenet had difficulties in detecting movements like "washing your arms," as it uses joints rather than individuals body parts (like arms). We thus had to adjust our tutorial by changing movements that were more easily identifiable by the model. ⚙️
✨ Accomplishments that we're proud of
Some things that we are proud of include the Proof-of-Lather, which uses TensorFlow.js ML pose detection directly into the browser to verify real shower gestures. We are also proud of the blockchain integration, using a custom ERC-721 NFT Smart Contract to the Base Sepolia testnet that features essential 24-hour expiry logic for true social accountability. Another feature we thought was pretty cool was that if you do not shower for 24 hours, your friends get an SMS message, truly keeping you accountable. 😂
🧠 What we learned
Throughout the journey, we learned more about interacting with the Blockchain and using CV models like TensorFlow to make cool things. 🚀
Built With
- alchemyapi
- blockchain
- etheruem
- javascript
- svelte
Log in or sign up for Devpost to join the conversation.