ocr 0.1.0

A minimalist OCR library for Rust — from scratch, no external engine
Documentation
# TODO

## Phase 1 — Core (current)

- [x] Single `ocr` crate: library + `ocr` / `ocr-mcp` binaries
- [x] Native OCR pipeline (binarize, segment, template match) — **no Tesseract**
- [x] Structured results (text, words, confidence, bounding boxes)
- [x] Image preprocessing (grayscale, Otsu binarization, noise cleanup)
- [x] CLI (text / JSON, preprocessing flag)
- [x] MCP server (stdio, `ocr_image`, `ocr_base64`)
- [x] English-oriented glyph set and integration tests

## Phase 2 — Enhanced capabilities

- [ ] Multi-script / extended glyph coverage (without external OCR engines)
- [ ] Richer language / layout handling (multi-line, simple paragraph rules)
- [ ] PDF support (render pages to images, then existing pipeline)
- [ ] Advanced preprocessing (deskew, adaptive threshold, denoise)
- [ ] Batch / directory input
- [ ] Configurable preprocessing presets
- [ ] Additional export formats (plain structured JSON schemas, etc.)

## Phase 3 — Advanced

- [ ] Stronger recognition (e.g. learned matchers) while keeping **optional** engine backends clearly separated from the default native path
- [ ] HTTP transport for MCP (rmcp / platform-specific)
- [ ] REST or gRPC API mode
- [ ] Container / deployment docs (no system OCR requirement by default)
- [ ] WASM / browser experiment (pure Rust path-friendly)
- [ ] Progress reporting for long batches
- [ ] Table or region hints (optional segmentation assist)