👨‍🍳

MatMatch

Recipe Finder & Food Waste Reducer

Overview

Food waste is a massive global problem. We throw away perfectly good ingredients simply because we don't know what to cook with them.

When I found myself staring at a fridge full of random ingredients, wondering what I could possibly make for dinner, I realized this was a problem worth solving.

That's when MatMatch was born - a sustainable cooking app that helps you create delicious recipes from ingredients you already have at home.

The Problem & Motivation

The main issue with cooking at home is that we often buy ingredients with specific recipes in mind, but end up with leftover items that we don't know how to use.

This leads to food waste, unnecessary grocery trips, and the frustration of not knowing what to cook with what you have.

According to studies, the average household throws away about 30% of their food. That's not just wasteful - it's expensive and harmful to the environment.

MatMatch solves this by helping you discover recipes based on your available ingredients, reducing waste while saving money and time.

Key Features & Functionality

🔍 Smart Ingredient Search

Simply enter the ingredients you have at home, and MatMatch will find recipes that use them effectively.

📚 Save to Your Cookbook

Log in to save your favorite recipes to a personal cookbook for easy access later.

🎯 Personalized Recommendations

Log in to set your dietary preferences and allergies for perfectly tailored recipe suggestions.

♻️ Sustainability Focus

Every recipe suggestion is designed to minimize food waste by prioritizing recipes that use the ingredients you've already entered while requiring minimal additional items.

Tech Stack

Frontend

  • React
  • TypeScript
  • Tailwind CSS

Backend

  • MongoDB
  • Prisma
  • Next.js route handlers

Other

  • Next.js
  • Shadcn/ui
  • Vercel Deployment
  • Google GenAI SDK
Challenges & Learnings

User Experience

Building a great user experience was a primary focus of this project. The challenge was to transform complex data, like detailed recipes and dietary requirements, into a simple and intuitive interface. This meant making the app easy to navigate and read on any device.

For me this experience highlighted the importance of clean, accessible, and responsive design and my main takeaways for effective user experience were:


  • Responsive Design: I used frameworks like Tailwind CSS to ensure the app's layout adapted seamlessly from mobile to desktop, providing a consistent experience for all users.

  • Intuitive Navigation: I focused on creating a clear user flow and an intuitive visual hierarchy, making it easy for users to quickly find what they're looking for and move between sections of the app.

  • Readability and Clarity: I used typography and spacing utilities to make the recipe text easy to read and understand, ensuring that even complex instructions were presented clearly.

Prompt Engineering

My experience building the recipe app highlighted a key challenge with AI: its tendency to invent information or not quite listening to instructions given. I found that the AI would often fabricate ingredients or ignore crucial dietary restrictions and allergies and also lie about the ingredients needed.

This underscored the importance of prompt engineering. I discovered that even minor adjustments to my prompts could dramatically change the quality and accuracy of a recipe. To ensure the AI's output was reliable, I implemented a set of rules, or guardrails, to control its behavior. My main takeaways for effective prompting were: prompt engineering. I discovered that even minor adjustments to my prompts could dramatically change the quality and accuracy of a recipe. To ensure the AI's output was reliable, I implemented a set of rules, or guardrails, to control its behavior.

My main takeaways for effective prompt engineering were:


  • Persona-Based Instruction: I gave the model a specific role to play, like “You are a professional chef,“ to guide its tone and content.

  • Explicit Constraints: I was very precise with my instructions, telling the AI exactly what to prioritize, such as focusing on a user's existing ingredients.

  • Structured Output: I asked the model to deliver a specific format, such as JSON, to ensure a consistent, predictable, and easy-to-parse response.

  • Protective Guardrails: I added strict commands to prevent the AI from generating unwanted content, such as ingredients that would trigger a user's allergies.

Every recipe discovered through MatMatch is a step towards reducing food waste and promoting sustainable cooking habits.

Try MatMatch Today

Turn your leftover ingredients into delicious meals while reducing food waste.