Inspiration
We all have a closet full of clothes and still feel like we have "nothing to wear." Fast fashion makes it easy to keep buying near-duplicates of things we already own, while perfectly good pieces sit unworn for years, worn once, forgotten, eventually donated or thrown out with zero thought behind it. We wanted to build something that acts like an actual fairy godmother for your closet: someone who knows what you own, helps you style it in new ways, and only nudges you toward donating something after genuinely trying to help you keep and re-love it. The name comes from Cinderella's transformation, we wanted opening the app to feel a little bit like magic, not like doing chores.
What it does
bibbidi-bobbidi-boo! is an AI-powered digital closet that helps you actually use what you own instead of buying more:
Smart closet: photograph or batch-upload your clothes; Gemini auto-tags category, color, style, and fit from the photo, no manual data entry
Fairy Godmother chat: a conversational stylist that factors in real-time weather (auto-detected via geolocation, saved for next time) and can name currently-relevant fashion aesthetics when you ask what's trending or seem unsure what to wear, talk to it by voice (ElevenLabs speech-to-text) and have it talk back
Virtual try-on: capture or upload a full-body photo and see selected outfits rendered on you via Gemini's image generation
Closet Health score: a live sustainability score based on how much of your closet you actually wear, with an animated meter that visibly reacts to your actions
AI donation recommendations: instead of a generic "you haven't worn this," Gemini explains why, referencing real computed facts like idle days and which similar item you reach for instead
A donation decision tree, not a delete button: before suggesting you give something away, it offers 5 AI-generated ways to restyle the piece; only if you're still not interested does it offer to help you donate, sell, or swap it, including sharing a photo of the item directly to friends via the native share sheet
Category and color filtering across your whole closet, with least-worn items surfaced first
How we built it
Next.js 15 (App Router) on the frontend and backend, MongoDB Atlas for storage, Auth0 for authentication, and Google Gemini for nearly all the "smart" parts, image analysis for auto-tagging, conversational outfit suggestions, virtual try-on image generation, and the donation reasoning engine. ElevenLabs powers voice input/output for the chat, with graceful fallback to the browser's native SpeechRecognition/speechSynthesis APIs when no key is configured. Weather comes from Open-Meteo (free, keyless), reverse-geocoded from the browser's location. Framer Motion handles the animation layer throughout.
Challenges we ran into
The AI landscape moved under us mid-build, Gemini model names we started with got deprecated for new API keys partway through the hackathon, and we had to migrate to alias-based model names (gemini-flash-latest) that track the current recommended model instead of hardcoding a version. Free-tier rate limits, some of our test keys were capped at as few as 20 requests/day, which meant building solid mock/fallback modes for every AI-dependent feature so the app never visibly breaks, demo-worthy or not.
No real image hosting, closet photos are stored as base64 data URLs rather than uploaded to cloud storage, which meant classic "share to Facebook/Twitter" links (which need a fetchable public URL) couldn't work. We used the Web Share API to share the actual image file directly instead.
Grounding AI output in real data, early versions of the donation reasoning read as generic AI fluff. We rebuilt it to compute real facts server-side (idle days, similar items, actual wear counts) and explicitly instructed Gemini to use only those facts, never invent a statistic.
Environment friction, chasing down a local network/firewall issue that was silently blocking our MongoDB connection cost real hackathon time before we traced it to a leftover VPN client on a dev machine.
Accomplishments that we're proud of
AI reasoning that's actually specific and data-grounded instead of generic, "100 days unworn, you always grab the oversized one instead" rather than "you haven't worn this in a while"
A donation flow that respects the user's stuff, restyling ideas first, alterations considered, donation as a last resort rather than the default suggestion
A sustainability score that's genuinely satisfying to watch move, tying an emotional payoff directly to the app's actual mission
Every AI-dependent feature degrades gracefully, the app never looks broken even without API keys configured
What we learned
How fast the AI API landscape shifts even within a single hackathon, why hardcoding model names is fragile, and how much better AI output gets when you constrain it with real computed facts instead of letting it improvise. Also plenty about coordinating a small team shipping fast on the same files without stepping on each other's work.
What's next for bibbity bibbity boo
Real cloud image hosting (Vercel Blob/Cloudinary) to unlock proper social sharing and faster load times, a real in-app swap marketplace instead of external links, a browser extension that warns you before buying something too similar to what you already own, and deeper carbon-footprint tracking tied to real garment data rather than category averages.
Built With
- ai
- auth0
- computer-vision
- css3
- elevenlabs
- framer-motion
- gemini-api
- google-gemini
- javascript
- machine-learning
- mongodb
- next.js
- node.js
- oauth
- react
- rest-api
- speech-recognition

Log in or sign up for Devpost to join the conversation.