All projects
ShippedPersonal2026Desktop · SystemsSolo Project

Lexo

An open-source OCR workstation for Burmese documents, scanned books, and PDFs

An open-source Python desktop application and CLI that routes digital PDFs, scanned pages, images, and legacy Burmese text through the appropriate extraction workflow, then produces clean data for publishing, NLP, and LLM pipelines.

At a glance

Outcome
Consolidates OCR, PDF repair, and text cleanup into one installable tool with two interfaces and three export formats for research and publishing workflows.
Delivery
Shipped, 2026 · Personal
Focus
Desktop, Systems
Scope
8 core technologies
PyPI downloads
1k+excluding mirrors, as of Sep 2026
Releases
8shipped over six weeks
Export formats
3

What I built

The product decisions and engineering work that shaped the final result.

  1. Designed one reusable processing engine behind both a PySide6 desktop interface and a scriptable Typer CLI.

  2. Implemented per-page document routing: usable embedded text is extracted instantly, while scanned pages are rendered and sent through an optional Google Docs OCR provider.

  3. Combined cropping, spread splitting, rotation, merging, page-range extraction, bounded concurrency, retry, and cancellation into a document-centric workflow.

  4. Hardened Burmese output with Unicode NFC normalization, zero-width-space-safe cleanup, a default Myanmar language hint, and bundled Myanmar fonts.

  5. Produced plain text, Markdown with YAML frontmatter, and JSONL for human editing and downstream data pipelines.

  6. Published reproducible releases to PyPI using uv, Hatchling, GitHub Actions, and Trusted Publishing.

See it in action

Interface views and demonstrations from the working product.

LEXO scan, crop, split, and OCR workflow
  • Document workspace with OCR and export controls
  • Page splitting and OCR workflow for scanned books