The Problem
As a household that loves cooking and does a fair amount of it, we accumulated recipes from countless sources: handwritten family recipes, cookbook photos, online articles, and sticky notes. Finding a specific recipe meant digging through piles of paper or scrolling through dozens of bookmarks. Commercial recipe apps either required subscriptions, locked data in proprietary formats, or couldn't handle our photo-based collection.
The Solution
Recipe Tracker exists in two versions designed for different needs:
Desktop Version (Local)
A fully offline desktop application that keeps all your data private:
- AI-Powered OCR: Extract recipes from photos using a local LLM (Ollama + Tesseract)
- URL Scraping: Import recipes from any cooking website
- Full-Text Search: Find recipes instantly across your entire collection
- Recipe Books: Organize recipes into collections
- Mobile Photo Upload: Scan a short-lived QR code to capture recipe images on your phone and upload directly to the desktop app
- Zero Cloud Dependency: Everything runs locally on your machine
Cloud Version
A multi-user deployment for sharing recipes with family and friends:
- Bulk Import: Process dozens of recipe photos in parallel via Google Cloud Run
- Multi-User Support: Group-based access with admin/member roles
- Google Cloud Vision + Gemini: Enterprise-grade OCR and AI parsing
- Progressive Web App: Works offline with IndexedDB caching
- Self-Hostable: Deploy to your own GCP project

Tech Stack
| Layer | Desktop | Cloud |
|---|---|---|
| Frontend | React 18, TypeScript, Vite, Tailwind CSS | Same |
| Backend | Tauri (Rust), SQLite | Express.js, PostgreSQL |
| AI/OCR | Ollama (llama3.2), Tesseract | Google Cloud Vision, Gemini 1.5 |
| Storage | Local filesystem | Google Cloud Storage |
| Hosting | Native desktop app | GCP |
Key Features
- Multi-Source Import: Photos, URLs, or manual entry
- Smart Parsing: AI extracts ingredients, instructions, and cooking times
- ISBN Lookup: Add cookbook metadata via OpenLibrary API
- Recipe Books: Organize with custom covers
- Search & Filter: By cuisine, meal type, dietary tags, or cooking time
- Export/Backup: Full data portability
Results
Both versions are fully functional and in daily use:
- Desktop app runs on macOS, Windows, and Linux
- Cloud version hosts our family recipes, shared across the household
- Average photo-to-recipe extraction takes about 45 seconds
Open Source
Both versions are currently undergoing a rewrite and will be available as public GitHub repositories once complete. The desktop app is for privacy-focused users; the cloud version is for those who want to self-host a shared solution for family and friends.
Related Articles
- From Scattered Recipes to a Complete System: The journey from problem to solution