🚀 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.
  • 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)

🌐 Sources:

Built With

Share this project:

Updates