Design Projects Coding Projects Experiments / Arts Writing About Resume / CV ↗

Fridge Genie

An AI-powered kitchen assistant to minimise food waste and promote healthy eating.

Born at the Microsoft AI Agents Hackathon 2025. Every year 1.3 billion tonnes of food go to waste; in many households — ours included — that is a daily struggle of forgetting food until it expires, not knowing what to cook, and lacking an easy way to track inventory.

I led ideation and user flows, designed the key screens in Figma and built the React Native front end over a two-week sprint.

Timeline
Apr 20252 weeks
Role
UI/UX designer & front-end developer
Team
HDC432Liwei Huang, Riley Tang, Grace Liu
Stack
React NativeNode.js / ExpressAzure Cosmos DBOpenAI APIAzure SpeechJWT

Born at the Microsoft AI Agents Hackathon 2025, which challenged us to build a meaningful solution to a real-world problem. Every year 1.3 billion tonnes of food go to waste globally; in many households, including our own, that is a daily struggle.

1.3B
tonnes of food wasted every year
2 wks
from idea to working app
Fridge Genie dashboard on a phone against a yellow background

01.Design Challenge

How might we efficiently consume and manage food to minimise wastage on a household level?Initial design question
Person holding expired milk and vegetables
Person staring at raw ingredients, unsure what to cook
Person juggling groceries and a paper inventory list
ForgettingFood sits unnoticed until it expires.
Not knowing what to cookWith the ingredients we already have.
No easy trackingLacking an easy way to track inventory and plan meals.

Our team set out to tackle this problem by leveraging AI to create a seamless and helpful kitchen assistant.

02.Ideation & User Flow

I led the team in brainstorming the app’s core functions. We prioritised features that directly addressed the user’s pain points, then mapped these ideas into a comprehensive user-flow diagram to ensure a logical and intuitive navigation structure, with a Smart AI Core at its centre.

User & inputVoice and manual
→
Smart AI CoreExpiry and health checks
→
Recipe & cooking journeyHealth checks · smart tips · shopping list
→
AI planning & insightsRecommend recipes · adjust portions · confirm cooking
01Open & sign inAuthenticate, then join or create a family and fill a health profile.
02Add itemsBy voice or manual input: count, weight or package; fridge, freezer or pantry.
03Smart AI CoreChecks expiry and health needs, recommends recipes, suggests a shopping list, gives tips and reminders.
04CookSelect a recipe, adjust portions or ingredients, confirm cooking; favourites feed back into the loop.
Three wireframe screens of the shopping recommendation flow
Early screens for recommendations, meal frequency and dietary preferences.

03.Prototyping & Architecture

With the flow defined, I moved into Figma to design the key screens. The focus was on a clean, scannable and encouraging interface.

1 · DashboardGives the user an at-a-glance view of their fridge, upcoming expirations and recipe ideas.
2 · Add itemStreamlined to be as fast as possible, using voice or text.
3 · AI assistantDesigned as a conversational modal, making it feel like a helpful assistant rather than a complex tool.
Dashboard screen with fridge and freezer items
Dashboard screen in the empty state

Dashboard: fridge, freezer and pantry at a glance.

Food inventory interaction

Edit item
Unit of measurement (count, weight in g or kg, package), quantity, storage location (fridge, freezer, pantry) and expiry date.
Ingredient overview
Each ingredient is tracked in batches with purchase date, expiry date, days left and quantity; one batch can be marked “consume first”.

AI services

  • OpenAI API. Natural-language processing (parsing “add item” commands) and recipe generation, fed with inventory, preferences and the blacklist.
  • Azure Speech Services. Voice-to-text for natural-language input.

Technical architecture

Client
React Native
OpenAI API
Azure Speech
Server
Node.js
Express
Database
Azure Cosmos DB

Data structure

Cosmos DB holds three collections:

Userid, email, name, languagedietPreferences, dislikedFoodsautoRecommend, recommendationFrequency
UserFavoriteRecipeuserId, recipeIdcreatedAt
SelectedIngredientsuserId, groupIdselectedAt