Jeremy Neely Text Jeremy

Documents & OCR · Prototype

OCR Review Studio

Upload a scan, check OCR line by line, tune it, export Markdown.

Built for: Someone digitizing a scanned document, such as a handwritten parts list

A scanned parts list with confidence-colored boxes above the extracted text (sample data).
A scanned parts list with confidence-colored boxes above the extracted text (sample data).

The problem

OCR output is only useful if someone can see where it went wrong, but most tools hand back a plain text dump. Tuning OCR for faded scans, phone photos or handwriting is guesswork.

What I built

I built a local Flask web app that runs PaddleOCR on an uploaded document and shows the page and the extracted text linked by position, with confidence-colored boxes. A short document clue seeds the settings, and the accepted result exports as structured Markdown.

How it works

  1. Upload a PDF or image and add an optional clue.
  2. The clue sets the first-pass OCR settings.
  3. Review the page and the text side by side.
  4. Tune any of 22 settings and re-run.
  5. Fix characters inline and export Markdown.
How OCR Review Studio is wiredRuns locally in a Flask app on the PC. Nothing is uploaded anywhere.
Comes inInside OCR Review StudioGoes out Scan or photo PDF, PNG, JPG, TIFF Document clue handwriting, language Clue to settings seeds the first pass PaddleOCR runs locally Side-by-side review confidence-coloured boxes Tune & re-run 22 settings, run history Markdown file with inline fixes Run history line count, confidence

Built with

  • Python
  • Flask 3
  • PaddleOCR
  • PyMuPDF
  • Pillow
  • JavaScript
Text Jeremy about this Next: AME-XDOC All 38 tools Texting opens your Messages app with a note already written. He replies himself.

More screens

More of Jeremy's work

All 38 tools, by category