Gohan: Ingredient-Based Meal Recommendation System

Machine Learning NLP Recommendation System FastAPI Full Stack
Demo Video
Architecture
Gohan recommendation pipeline diagram
View on GitHub Try the Live App

Gohan is an ingredient-based meal recommendation system that helps users discover recipes using what's already in their kitchen. Type in available ingredients and the system returns ranked, relevant recipes — no exact matches required.

The recommendation pipeline vectorises ingredient lists with TF-IDF, reduces dimensionality using Truncated SVD, assigns each recipe to a KMeans cluster, then ranks candidates within the predicted cluster by cosine similarity. This layered approach keeps inference fast while surfacing semantically similar recipes across flexible ingredient combinations.

The FastAPI backend is deployed on Render; the anime-inspired frontend is hosted on GitHub Pages.

Architecture

Input ingredients → TF-IDF vectorisation → Truncated SVD → KMeans cluster prediction → cosine similarity ranking → top-K recipes via /recommend endpoint.

Built with
Python FastAPI Scikit-learn TF-IDF Truncated SVD KMeans Pandas Render GitHub Pages

Unsupervised ML recommendation pipeline: TF-IDF + SVD + KMeans clustering with cosine similarity ranking; full-stack deployment via FastAPI on Render and a static GitHub Pages frontend.