This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
What I Built
Recipe Keeper is an application that turns rambling voice memos from home cooks into a clean, searchable, and printable family cookbook.
I built this for my grandmother (Nani). Like many experienced home cooks, her recipes live entirely in her head. She cooks by feel, describing measurements as "a fistful of jeera," "enough water to cover plus two fingers," or "a good dollop of ghee." Asking her to type out recipes is a non-starter, and generic recipe apps demand precise metrics she doesn't use.
This app solves that by letting her simply talk into her phone while cooking. We upload the audio, and the app transcribes and extracts the recipe while preserving her exact phrasing, highlighting estimated quantities, and saving all her tips and stories.
Demo
Since this is a 100% offline, privacy-first desktop application designed to protect family data, there is no hosted live demo. You can test and demo it locally on your own machine by checking out the GitHub repository below!
Code
Recipe Keeper
Turn a loved one's rambling voice memos about their cooking into a clean, searchable, printable family recipe book, entirely on a laptop, with no internet and no cloud.
Built for Nani, who cooks from memory.
Features
-
100% Local: Uses open-weight models (
faster-whisper,Ollama). No cloud APIs. - Fidelity First: Keeps the cook's original phrasing (e.g. "a fistful of jeera"). Approximations are flagged.
- Exportable: Print a beautiful PDF cookbook, or export to Markdown/ZIP.
Quick Start
- Install Ollama and Python 3.10+.
- Run
make setup(orbash scripts/setup.sh). This installs dependencies and pulls the default LLM model (qwen2.5:7b). - Run
make runto start the server. - Visit
http://127.0.0.1:8000.
Hardware & Model Swapping
-
16GB+ RAM: The default
qwen2.5:7bis excellent. -
8GB RAM: Change
model: "qwen2.5:7b"tomodel: "llama3.2:3b"inconfig.yaml. - Whisper defaults to
small.
Personalizing
Edit config.yaml to change the…
How I Built It
The stack is built entirely around 100% open-source, locally run AI:
-
Speech-to-Text:
faster-whisper(running the open-weight Whispersmallmodel) to handle multilingual offline transcription (e.g., mixing English and Hindi). -
LLM Extraction:
Ollamaserving open-weight models (likeqwen2.5:7borllama3.2:3bfor lower-RAM laptops). - Backend/Frontend: Python 3.10+, FastAPI, SQLite, and vanilla HTML/CSS/JS (no build steps).
The core of the project relies on heavily engineered prompts that enforce strict "fidelity rules" on the LLM. The agent is instructed to never invent ingredients, to map vague quantities to an approx_metric flagged strictly as an is_estimate, and to pull out exact quotes for an original_phrase field.
Why Does Open Innovation Matter?
Family voices, stories, and recipes are incredibly personal and intimate. A cloud-based solution would require uploading my grandmother's private voice memos to third-party servers and paying per minute for transcription/extraction.
Open-weight models make this project possible because they guarantee absolute privacy. The app runs completely offline, binding only to 127.0.0.1. It costs nothing to run, and because the weights are open, the app won't suddenly break when an API gets deprecated. It ensures this cookbook tool will work forever on a standard laptop.
My Agent Session
Prize Categories
- Open-Source Innovation
- Best Use of AI / Local Models
Top comments (0)