🚀 Inspiration:
With 38% of U.S. food going unsold or uneaten, the importance of reducing waste is clearer than ever.
Blendr channels this momentum on a personal level, helping health-conscious individuals find meal partners with compatible dietary goals, ingredient lists, and a shared desire for sustainable, mindful living. Together, users can reduce waste and enjoy nutritious meals—fostering connections and sustainable habits. 🌱🥦🍲
🎉 What It Does:
Blendr is a social platform that matches users for collaborative cooking based on dietary goals, available ingredients, and preferences. Key features include:
- 👤 User Profiles: Users create profiles detailing their dietary goals, restrictions, cuisine preferences, allergies, location, and available appliances.
- 🛠️ Ingredient Input: Ingredients can be quickly entered through voice (Deepgram), by image recognition (Groq API), or manually.
- 🔍 Matching System: Users discover matches with compatible ingredient lists and dietary needs.
- 🍲 Recipe Suggestions: Based on shared ingredients and preferences, users receive custom recipe suggestions.
- 💬 Messaging: Users can directly message their matches to coordinate meal plans.
🛠️ How We Built It:
- Frontend: Developed with React, Vite, and TailwindCSS for a responsive, mobile-first experience where users can manage profiles, find matches, and view recipes.
- Backend: Built with Node.js and Express, using Socket.IO for real-time messaging and MongoDB for data storage.
- APIs/Integrations:
- 🔤 Groq API: Handles text-to-text and image-to-text inferences, converting ingredient lists and generating meal suggestions.
- 🎙️ Deepgram: Enables voice-to-text for natural language ingredient entry.
- 🥑 Calorie Ninja API: Provides nutritional information, aiding users in meeting dietary goals.
- ☁️ Cloudinary: Manages user profile image storage.
- APIs/Integrations:
- Database: MongoDB organizes user profiles, dietary data, ingredient lists, and match history.
🚧 Challenges We Ran Into:
- Complex Data Processing: Integrating various input formats (text, voice, image) required robust parsing and consistent data cleaning.
- Efficient Matching Algorithm: Designing an algorithm to match users based on ingredient lists, dietary needs, and preferences was challenging.
- API Rate Limits: Some APIs were unreliable or rate-limited, necessitating better error handling and optimized API call structures.
- State Management: Tracking real-time matches, messaging, and ingredient lists required efficient state management across components.
🏆 Accomplishments That We're Proud Of:
- 🚀 Smooth User Onboarding: Our onboarding flow collects dietary goals, restrictions, and preferences, ensuring a tailored experience.
- 🔍 Intelligent Matching System: Created a robust matching algorithm to connect users based on ingredient lists and dietary needs.
- 🎨 Intuitive UI/UX: The sleek, modern UI/UX makes exploring matches and planning meals enjoyable.
- 💬 Real-Time Messaging: Integrated real-time chat for users to coordinate meals with ease.
📚 What We Learned:
- Integrating Multiple APIs: Learned how to combine text, voice, and image APIs effectively for a cohesive user experience.
- Advanced State Management: Enhanced skills in managing real-time app state with Socket.IO.
- Critical Error Handling: Recognized the value of robust error handling, especially with external APIs.
- Iterative Development: Frequent testing and iterating were essential for a stable, reliable app.
🔮 What's Next for Blendr:
- 🧑🍳 Customizable Recipes: Allow users to fine-tune dietary goals like calorie counts or protein intake for recipe suggestions.
- 🚄 Optimized API Calls: Speed up ingredient recognition and recipe generation with parallelized backend calls.
- 📱 Native Mobile App: Expand Blendr to mobile for on-the-go ingredient recognition and meal planning.
- 🔔 Enhanced Notifications: Notify users of new matches, meal invitations, and messages to boost engagement.
- 🎙️ Voice-Activated Controls: Add voice commands to streamline ingredient input and recipe discovery.
- 🍽️ Expanded Ingredient Recognition: Improve recognition accuracy and support more languages for diverse users.
💻 Tech Stack:
- Frontend: React, Vite, TailwindCSS
- Backend: Node.js, Express, MongoDB
- APIs/Tools:
- 🔤 Groq API (text-to-text, image-to-text inferences)
- 🎙️ Deepgram (voice-to-text)
- 🥑 Calorie Ninja API (nutrition info based on ingredients)
- 💬 Socket.IO (real-time messaging)
- ☁️ Cloudinary (image storage and management)
- 🔤 Groq API (text-to-text, image-to-text inferences)
🌐 Sources:
Built With
- calorie-ninja-api
- cloudinary
- deepgram
- express.js
- framer-motion
- groq
- javascript
- mongodb
- node.js
- react
- socket.io
- tailwindcss
- vite
- zustand



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