Recipify is a powerful receipt data extraction tool that combines YOLO11 for object detection and Tesseract OCR for text recognition. It automatically extracts key information from receipt images, such as vendor names, total amounts, items, and dates, to help you keep track of your expenses.
- YOLO11 Object Detection: Detects receipt elements like shop names, total amounts, dates, and items
- Tesseract OCR: Extracts textual data from receipt images
- Advanced Preprocessing: Enhances image quality for better OCR and object detection
- Multiple Receipt Types: Supports Walmart, Cafeteria, and other receipt formats
- Data Validation: Ensures extracted data accuracy with Pydantic models
- Comprehensive Logging: Detailed logging with rotation and formatting
- Type Safety: Full type hints and runtime checking
- Extensive Testing: Comprehensive test suite with high coverage
pip install recipifygit clone https://github.com/subhashhhhhh/Recipify.git
cd Recipify
pip install -e ".[dev]" # Install with development dependenciesfrom recipify import parse_receipt_data
# Extract data from receipt text
receipt_text = """
Walmart
Apple 1.99
Banana 0.99
TOTAL 2.98
03/15/24
14:30
"""
result = parse_receipt_data(receipt_text)
print(result)- Create Virtual Environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install Dependencies
pip install -e ".[dev]"- Setup Pre-commit Hooks
pre-commit install- Run Tests
pytestRecipify can be configured using environment variables:
export RECIPIFY_LOG_LEVEL=DEBUG
export RECIPIFY_TESSERACT_CMD=/usr/local/bin/tesseractSee recipify/config/settings.py for all available settings.
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and linting
pytest
pre-commit run --all-files- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Ultralytics for YOLO11
- Google for Tesseract OCR
- The Python community for excellent tools and libraries