Snap a photo of your fridge and get tailored recipe by an italian Chef...and more! First project build in cooperation with real italian Chef.
See the code
UPDATE — UPDATED VERSION
Multilingual UI (IT · EN · PL · ES · HI), flag language picker, localized classic cookbook, chef prompts, and photo → recipe flow. Clone or pullmainfor the latest release.
Try it now: https://frigo-chef-omega.vercel.app
Photograph the inside of your fridge. Confirm the ingredients. Get recipes you can cook tonight — written in the style of an Italian home kitchen — or a shelf-by-shelf plan to store the food correctly.
FridgeChef is the first app built with a real Italian chef to generate everyday recipes in an Italian cooking style: clear steps, realistic times, pantry-aware dishes, and the taste of home rather than restaurant showpieces.
Snap a photo of your fridge and get tailored recipes. 3D grocery-style UI, navy glass, and lime accents.
For people who open the fridge, freeze for ten seconds, and still don’t know what to make.
Live app: https://frigo-chef-omega.vercel.app
Open that link on your phone or desktop to use FridgeChef immediately (photo → recipes, classic cookbook, fridge organization, IT / EN / PL / ES / HI).
Note:
https://frigo-chef.vercel.appis a different public project (French “Cuisine Intelligente”). This app’s production URL is https://frigo-chef-omega.vercel.app.
Manifest + service worker enable standalone mode. AI features need network and GEMINI_API_KEY on the server.
The app UI, AI chef prompts, error messages, and the classic cookbook text can be switched from the header language control (flag + fixed list — no free typing):
| Flag | Language |
|---|---|
| 🇮🇹 | Italiano |
| 🇬🇧 | English |
| 🇵🇱 | Polski |
| 🇪🇸 | Español |
| 🇮🇳 | हिन्दी (Hindi) |
Choice is saved in the browser (localStorage).
git clone https://github.com/Dariolex/FridgeChef.git
cd FridgeChef
npm install
export GEMINI_API_KEY=your_key_from_aistudio
npm run dev
Open http://localhost:8080.
Expected result: the app loads, the language control shows the current flag (🇮🇹 / 🇬🇧 / 🇵🇱 / 🇪🇸), and the home screen offers Take a photo (or type ingredients by hand).
Get a free Gemini key (type auth) from Google AI Studio.
Without a key, photo recognition is off — manual ingredients and the classic cookbook still work.
Most “recipe AI” tools ask you to type a list and answer in a generic tone. FridgeChef was shaped with a real Italian chef’s approach: what to do with what is already in the fridge, how a home cook in Italy would actually cook it, and how to keep steps practical.
The flow starts from the fridge photo, lets you confirm chips, then branches into three actions:
If the AI call fails, the app falls back to the built-in cookbook instead of a blank screen.
Shopping list and cooking history stay in the browser — no account required for the core flow.
What it does not do: meal-plan a whole week, sync a smart fridge, or replace a full nutrition database.
AI returns structured recipes (title, minutes, ingredients, steps, tip, optional missing items for the shopping list).
eggs, zucchini, cooked ham
Type them on the home screen → Go → same three actions as after a photo.
Open the Recipes tab. Expand categories (primi, secondi, eggs, sides, dessert).
Recipe text follows the selected language (IT / EN / PL / ES / HI).
Prerequisites
macOS / Linux / Windows (terminal)
git clone https://github.com/Dariolex/FridgeChef.git
cd FridgeChef
npm install
Run locally
export GEMINI_API_KEY=... # Windows PowerShell: $env:GEMINI_API_KEY="..."
npm run dev
Server listens on 0.0.0.0:8080.
Production build
npm run build
npm run preview
Checks used in development
npm run typecheck
npm run lint
npm test
| Variable | Default | Description |
|---|---|---|
GEMINI_API_KEY | (empty) | Google AI Studio auth key. Required for photo inventory, AI recipes, and fridge organization. |
GEMINI_VISION_MODEL | gemini-3.5-flash-lite | Model for reading foods from the photo. |
GEMINI_RECIPE_MODEL | gemini-3.5-flash | Model for recipes and fridge organization. |
API calls use Gemini’s OpenAI-compatible endpoint (generativelanguage.googleapis.com).
| Symptom | What to try |
|---|---|
“AI is not configured” / no_key | Export GEMINI_API_KEY in the same shell that runs npm run dev, then restart the dev server. |
| Auth / invalid key | Create a new auth key in AI Studio; restricted keys may not match what the app expects. |
| Quota / rate limit | Free-tier limits; wait and retry, or use Classic cookbook / manual entry. |
| No foods detected in the photo | Better light, open door fully, or add ingredients as chips by hand. |
| Port 8080 already in use | Stop the other process, or change the port in the dev script in package.json. |
Issues and pull requests are welcome on GitHub. Prefer small, focused changes (UI, cookbook recipes, i18n, tests under src/lib/recipe-ai.test.ts).
License: MIT — see LICENSE.
React 19 · TanStack Start / Router · Tailwind CSS v4 · Google Gemini (vision + text) · localStorage for shopping list and last 30 cooked dishes · PWA-ready static assets under public/ · UI and classic cookbook localized for Italian, English, Polish, Spanish, and Hindi.
26 commits
TypeScript
84.8%
JavaScript
14.1%
Snap a photo of your fridge and get tailored recipe by an italian Chef...and more! First project build in cooperation with real italian Chef.
See the code
UPDATE — UPDATED VERSION
Multilingual UI (IT · EN · PL · ES · HI), flag language picker, localized classic cookbook, chef prompts, and photo → recipe flow. Clone or pullmainfor the latest release.
Try it now: https://frigo-chef-omega.vercel.app
Photograph the inside of your fridge. Confirm the ingredients. Get recipes you can cook tonight — written in the style of an Italian home kitchen — or a shelf-by-shelf plan to store the food correctly.
FridgeChef is the first app built with a real Italian chef to generate everyday recipes in an Italian cooking style: clear steps, realistic times, pantry-aware dishes, and the taste of home rather than restaurant showpieces.
Snap a photo of your fridge and get tailored recipes. 3D grocery-style UI, navy glass, and lime accents.
For people who open the fridge, freeze for ten seconds, and still don’t know what to make.
Live app: https://frigo-chef-omega.vercel.app
Open that link on your phone or desktop to use FridgeChef immediately (photo → recipes, classic cookbook, fridge organization, IT / EN / PL / ES / HI).
Note:
https://frigo-chef.vercel.appis a different public project (French “Cuisine Intelligente”). This app’s production URL is https://frigo-chef-omega.vercel.app.
Manifest + service worker enable standalone mode. AI features need network and GEMINI_API_KEY on the server.
The app UI, AI chef prompts, error messages, and the classic cookbook text can be switched from the header language control (flag + fixed list — no free typing):
| Flag | Language |
|---|---|
| 🇮🇹 | Italiano |
| 🇬🇧 | English |
| 🇵🇱 | Polski |
| 🇪🇸 | Español |
| 🇮🇳 | हिन्दी (Hindi) |
Choice is saved in the browser (localStorage).
git clone https://github.com/Dariolex/FridgeChef.git
cd FridgeChef
npm install
export GEMINI_API_KEY=your_key_from_aistudio
npm run dev
Open http://localhost:8080.
Expected result: the app loads, the language control shows the current flag (🇮🇹 / 🇬🇧 / 🇵🇱 / 🇪🇸), and the home screen offers Take a photo (or type ingredients by hand).
Get a free Gemini key (type auth) from Google AI Studio.
Without a key, photo recognition is off — manual ingredients and the classic cookbook still work.
Most “recipe AI” tools ask you to type a list and answer in a generic tone. FridgeChef was shaped with a real Italian chef’s approach: what to do with what is already in the fridge, how a home cook in Italy would actually cook it, and how to keep steps practical.
The flow starts from the fridge photo, lets you confirm chips, then branches into three actions:
If the AI call fails, the app falls back to the built-in cookbook instead of a blank screen.
Shopping list and cooking history stay in the browser — no account required for the core flow.
What it does not do: meal-plan a whole week, sync a smart fridge, or replace a full nutrition database.
AI returns structured recipes (title, minutes, ingredients, steps, tip, optional missing items for the shopping list).
eggs, zucchini, cooked ham
Type them on the home screen → Go → same three actions as after a photo.
Open the Recipes tab. Expand categories (primi, secondi, eggs, sides, dessert).
Recipe text follows the selected language (IT / EN / PL / ES / HI).
Prerequisites
macOS / Linux / Windows (terminal)
git clone https://github.com/Dariolex/FridgeChef.git
cd FridgeChef
npm install
Run locally
export GEMINI_API_KEY=... # Windows PowerShell: $env:GEMINI_API_KEY="..."
npm run dev
Server listens on 0.0.0.0:8080.
Production build
npm run build
npm run preview
Checks used in development
npm run typecheck
npm run lint
npm test
| Variable | Default | Description |
|---|---|---|
GEMINI_API_KEY | (empty) | Google AI Studio auth key. Required for photo inventory, AI recipes, and fridge organization. |
GEMINI_VISION_MODEL | gemini-3.5-flash-lite | Model for reading foods from the photo. |
GEMINI_RECIPE_MODEL | gemini-3.5-flash | Model for recipes and fridge organization. |
API calls use Gemini’s OpenAI-compatible endpoint (generativelanguage.googleapis.com).
| Symptom | What to try |
|---|---|
“AI is not configured” / no_key | Export GEMINI_API_KEY in the same shell that runs npm run dev, then restart the dev server. |
| Auth / invalid key | Create a new auth key in AI Studio; restricted keys may not match what the app expects. |
| Quota / rate limit | Free-tier limits; wait and retry, or use Classic cookbook / manual entry. |
| No foods detected in the photo | Better light, open door fully, or add ingredients as chips by hand. |
| Port 8080 already in use | Stop the other process, or change the port in the dev script in package.json. |
Issues and pull requests are welcome on GitHub. Prefer small, focused changes (UI, cookbook recipes, i18n, tests under src/lib/recipe-ai.test.ts).
License: MIT — see LICENSE.
React 19 · TanStack Start / Router · Tailwind CSS v4 · Google Gemini (vision + text) · localStorage for shopping list and last 30 cooked dishes · PWA-ready static assets under public/ · UI and classic cookbook localized for Italian, English, Polish, Spanish, and Hindi.
26 commits
TypeScript
84.8%
JavaScript
14.1%