.../Case-studies/ai-recipe-app...

AI Recipe Assistant Case Study

AI Recipe Assistant Case Study

Tech Stack used:

  • Next.js & React for frontend
  • TypeScript for scalable development
  • Tailwind CSS for responsive UI styling
  • Node.js API routes for backend handling
  • Gemini Vision API for ingredient detection
  • NVIDIA AI APIs (DeepSeek & Llama fallback)
  • Spoonacular API for recipe retrieval

Introduction

CookVault is an AI-powered recipe assistant that helps users discover recipes using available ingredients or even fridge images. The project combines computer vision, AI-generated recommendations, and real-time recipe retrieval to create a smart cooking experience focused primarily on Indian cuisine. Users can either manually enter ingredients or upload fridge images, after which the system detects ingredients automatically and generates personalized recipe suggestions.

Why did I build this?

Why did I build this?

I built this project to explore how artificial intelligence and modern APIs can work together to solve practical real-world problems. As someone interested in both full-stack development and AI integration, I wanted to create an application that goes beyond traditional CRUD operations and demonstrates how AI can enhance user experience in meaningful ways.

The idea came from a common household situation where people often have ingredients available but are unsure what they can actually cook with them. Instead of manually searching recipes online, I wanted users to simply enter ingredients—or even upload a fridge image—and instantly receive recipe recommendations. Since most recipe APIs tend to prioritize western dishes, I specifically optimized the system to focus on Indian cuisine so the suggestions feel more practical and culturally relevant for Indian users.

What problems did I face?

What problems did I face?

One of the biggest challenges was handling AI model reliability and response consistency. During development, the DeepSeek model occasionally became extremely slow or stopped responding altogether, which affected user experience. To solve this, I implemented timeout handling using Promise.race() and also integrated a fallback Llama model so the system could still generate responses even if the primary AI model failed.

Another major challenge was maintaining consistency between AI-generated recipe suggestions and the actual recipes returned by Spoonacular. Initially, the AI would intelligently suggest Indian dishes such as Paneer Bhurji, while the API sometimes returned unrelated western recipes. I resolved this by switching from Spoonacular's findByIngredients endpoint to the more advanced complexSearch endpoint with Indian cuisine filtering. I also optimized prompts and retrieval logic so both the AI layer and recipe API remained culturally aligned and produced more accurate results.

What would I improve now?

What would I improve now?

If I continue developing this project further, I would enhance the overall AI interaction experience by converting plain text AI responses into fully structured dynamic recipe cards. Instead of rendering responses as simple text blocks, the AI could return JSON-formatted recipe objects that can be displayed through animated and interactive UI components.

I would also integrate more advanced personalization and smart cooking features. For example, users could receive region-specific Indian recipe recommendations, nutrition analysis, meal planning suggestions, and voice-based cooking assistance. Additionally, I would like to implement authentication and user history so the system can learn user preferences over time and provide more personalized cooking recommendations.