11# Sentri OCR Worker
22
3- [ ![ CI ] ( https://github.com/yourusername /sentri/workflows/CI /badge.svg )] ( https://github.com/yourusername /sentri/actions )
3+ [ ![ ML Worker ] ( https://github.com/SahilKumar75 /sentri/actions/ workflows/ml-worker.yml /badge.svg )] ( https://github.com/SahilKumar75 /sentri/actions/workflows/ml-worker.yml )
44[ ![ Python 3.11+] ( https://img.shields.io/badge/python-3.11+-blue.svg )] ( https://www.python.org/downloads/ )
55[ ![ Code style: black] ( https://img.shields.io/badge/code%20style-black-000000.svg )] ( https://github.com/psf/black )
66[ ![ License] ( https://img.shields.io/badge/license-MIT-green.svg )] ( LICENSE )
@@ -9,13 +9,13 @@ Zero-budget OCR and timetable parsing worker for Sentri. Designed to sit behind
99
1010## Features
1111
12- - 🔍 ** OCR Processing ** - Extract text from timetable images using Tesseract
13- - 📊 ** Intelligent Parsing ** - Convert raw OCR text into structured timetable entries
14- - 🎯 ** High Accuracy ** - Deterministic parsing logic with fuzzy matching
15- - 🔧 ** Configurable ** - Tuning profiles for customization
16- - 📈 ** Metrics** - Built-in performance monitoring and evaluation
17- - 🐳 ** Docker Ready ** - Containerized deployment with Docker Compose
18- - ✅ ** Well Tested ** - Comprehensive test suite with high coverage
12+ - OCR processing with Tesseract when the binary is available
13+ - Deterministic parsing from raw OCR text and cell-like table input
14+ - Fuzzy matching for common timetable OCR errors
15+ - Tuning profiles for subject, faculty, and parser behavior
16+ - Metrics and fixture evaluation for parser quality checks
17+ - Docker support for repeatable local runs
18+ - Pytest coverage for parser, worker, cache, validation, and utility code
1919
2020## Quick Start
2121
@@ -117,7 +117,7 @@ pre-commit install
117117
118118``` bash
119119# Run all tests
120- make test
120+ pytest
121121
122122# Run with coverage
123123make test-cov
@@ -126,6 +126,8 @@ make test-cov
126126pytest tests/test_parser.py -v
127127```
128128
129+ GitHub Actions runs ` pytest ` on Python 3.11 and 3.12 whenever a pull request changes worker files.
130+
129131### Code Quality
130132
131133``` bash
0 commit comments