A comprehensive mobile-friendly web application that captures, parses, stores recipes from multiple sources and generates smart shopping lists from your recipe collection.
Features
Recipe Management
Multi-source Recipe Input: Accept recipes from:
Web URLs (recipe websites)
PDF files
Images (photos of recipes)
Plain text input
Intelligent Parsing: Automatically extracts:
Dish title and description
Ingredients with precise quantities and units
Step-by-step cooking instructions
Cooking metadata (prep time, cook time, servings, difficulty)
Recipe tags and source information
Recipe Storage: Persistent SQLite storage with full CRUD operations
Recipe Management: View, edit, delete, and organize saved recipes
Advanced Features:
Recipe filtering and search
Fraction-to-decimal conversion for precise measurements
Comprehensive error handling and validation
Real-time parsing feedback
Shopping List Management
Smart Shopping List Generation: Create shopping lists from selected recipes
Ingredient Consolidation: Automatically combines duplicate ingredients from multiple recipes
Interactive Shopping Experience:
Check/uncheck items as you shop
Real-time progress tracking
Visual progress bar showing completion percentage
List Management:
Edit shopping list names
Delete completed lists
View creation timestamps
Ingredient Details: Shows which recipes each ingredient came from
Mobile-Optimized: Perfect for grocery shopping on your phone
Tech Stack
Frontend: React 18.2.0 with TypeScript, TailwindCSS
Testing: Use built-in test endpoints and browser developer tools
Debugging: Check Val Town logs for server-side issues
Deployment: Automatic on file save in Val Town environment
Troubleshooting
Common Issues
PDF Parsing Fails: Ensure PDF contains readable text (not scanned images)
Image Upload Issues: Verify image is properly base64 encoded
Database Errors: Check if migrations ran successfully on startup
OpenAI Errors: Verify API quota and model availability
Shopping List Issues: Ensure recipes have valid ingredients before creating lists
Debug Endpoints
GET /api/health - Check if API is responding
GET /api/test-delete - Test database delete operations
Browser console logs for client-side debugging
Server logs in Val Town interface for backend issues
Recent Updates
This app has evolved from a simple recipe parser to a comprehensive recipe and shopping list management system. The shopping list feature represents a major enhancement that transforms the app from a recipe storage tool into a complete cooking workflow solution.