Label input
Accept barcode, text, or OCR-based analysis, including image and bounded PDF processing.
Community / App case study
A prototype label-screening tool that combines OCR, ingredient classification, and rule-based checks to explain its findings.
Label-screening prototype

01 / Overview
Combine extracted label text, ingredient classification, and knowledge-base checks so a screening result can be understood and reviewed.
People checking food labels and reviewing ingredient-level evidence.
02 / Features
Accept barcode, text, or OCR-based analysis, including image and bounded PDF processing.
Combine classification results with structured rules, retaining unresolved and doubtful ingredient warnings.
Explain rules through a retrieval assistant and keep scan history on the device in deployed builds.
03 / Workflow
Provide a barcode, ingredient text, or label image.
Extract and analyze the ingredients through the available OCR and classification paths.
Review the screening result alongside ingredient warnings and rule references.
Use the explanation assistant or review device-local scan history.
04 / Technical layers
The Vite interface handles input, scanning, result presentation, and local scan records.
Local Flask endpoints and deployed serverless adapters implement the screening workflow.
The local backend documents SQLite caching/history; deployed history is device-local rather than a persistent shared serverless database.
Configured services provide OCR and classification; documented fallback paths retain unresolved evidence when credentials are absent.
05 / Limitations
06 / Evidence
These descriptions were reviewed against the linked source snapshot on October 12, 2026. Repository code and documentation may evolve after this review.